本文主要是介绍MySQL进阶十一:DDL数据定义语言概论,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
目录
DDL
含义
一、库的管理
1、库的创建
2、库的修改
3、库的删除
二、表的管理
1、表的创建
语法
2、表的修改
语法
案例
3、表的删除
语法
通用写法
4、表的复制
案例
文章涉及到的MySQL、SQLyog的配置安装,请参考 MySQL配置+SQLyog安装教程
DDL
含义
库和表的管理
- 库的管理:创建、修改、删除
- 表的管理:创建、修改、删除
一、库的管理
1、库的创建
语法
create database 库名;
#案例:创建库Books
CREATE DATABASE IF NOT EXISTS books;
2、库的修改
现在只能通过进入文件夹进行重命名
RENAME DATABASE books TO 新库名; #不安全,被遗弃了
TIP:更改库的字符集
ALTER DATABASE books CHARACTER SET gbk;
3、库的删除
DROP DATABASE IF EXISTS books;
二、表的管理
1、表的创建
语法
create table 表明(列名 列的类型(【长度】) 【列的约束】,列名 列的类型(【长度】) 【列的约束】,... ,列名 列的类型(【长度】) 【列的约束】
#案例:创建表book
CREATE TABLE book(id INT,bname VARCHAR(20), # 书名的最大长度(字符)price DOUBLE,author_id INT, # 作者编号publishDate DATETIME #出版日期
); #案例:创建author表
CREATE TABLE author(id INT,au_name VARCHAR(20),nation VARCHAR(10)
);
2、表的修改
语法
alter table 表名 add/drop/modify/change column 列名 【类型】 【约束】
案例
#修改列名 column可以省略
ALTER TABLE book CHANGE COLUMN publishDate pubDate DATETIME;
DESC author;
#修改列的类型或约束
ALTER TABLE book MODIFY COLUMN pubDate TIMESTAMP;
#添加新列
ALTER TABLE author ADD COLUMN annual DOUBLE;
#删除列
ALTER TABLE author DROP COLUMN annual;
#修改表名
ALTER TABLE author RENAME TO book_author;
3、表的删除
语法
DROP TABLE IF EXISTS book_author; #exists只能用于表/库的创建和删除,不能用于库
通用写法
DROP DATABASE IF EXISTS 旧库名;
CREATE DATABASE 新表名;DROP TABLE IF EXISTS 旧表名;
CREATE TABLE 新表明();
4、表的复制
首先,输入一些数据
INSERT INTO author VALUES
(1, '村上春树', '日本'),
(2, '莫言', '中国'),
(3, '冯唐', '中国'),
(4, '金庸', '中国');
案例
#1.仅仅复制表的结构
CREATE TABLE copy LIKE author;#copy里没有内容#2.复制表的结构外加数据
CREATE TABLE copy2
SELECT * FROM author;#3.复制部分数据
CREATE TABLE copy3
SELECT id, au_name
FROM author
WHERE nation='中国';#4.仅仅复制某些字段
CREATE TABLE copy4
SELECT id, au_name
FROM author
WHERE 0;
这篇关于MySQL进阶十一:DDL数据定义语言概论的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!