MySQL中DDL的基本操作

-- DDL:数据定义语言,用于操作数据库和表 CREATE 增 DROP 删 SHOW 查 ALTER 改
-- 创建数据库
CREATE DATABASE 库名;
-- 创建表
CREATE TABLE     表名(
字段名称 数据类型 约束条件,
字段名称 数据类型 约束条件,
字段名称 数据类型 约束条件,
字段名称 数据类型 约束条件
);

-- 删除数据库
DROP DATABASE 库名;
-- 删除表
DROP TABLE 表名;

-- 使用数据库
USE 库名;

-- 查询所有数据库
SHOW databases;
-- 查询数据库中所有的表
SHOW TABLES;

-- 查询数据库的基本属性
SHOW CREATE DATABASE 库名;
-- 查询表的基本属性
SHOW CREATE TABLE 表名;


-- 修改数据库的编码格式
ALTER DATABASE 数据库名称 CHARACTER SET 新字符集;
ALTER DATABASE 数据库名称 CHARSET 新字符集;
-- 修改表的编码格式
ALTER TABLE 表名 CHARACTER SET 新字符集;
ALTER TABLE 表名 CHARSET 新字符集;
-- 修改表的名称
RENAME TABLE 原表名 TO 新表名;
RENAME TABLE 原表名 RENAME TO 新表名;


-- 字段的增加   ADD
ALTER TABLE 表名 ADD 字段名称 数据类型;
-- 字段的删除   DROP
ALTER TABLE 表名 DROP 列名;
-- 字段的修改        MODIFY  CHANGE
-- modify只能修饰列的数据类型,不能修改列名;
ALTER TABLE 表名 MODIFY 列名称 新数据类型;  
ALTER TABLE 表名 CHANGE 旧列名 新列名 数据类型;


-- 黑窗口操作
-- 数据库的备份
mysqldump -u用户名 -p密码 数据库名称 > 保存路径;
mysqldump -uroot -proot khn > C:\Users\ksaar\Desktop\文件名.sql
-- 数据库的还原
source 文件路径


-- 约束条件 (了解内容,具体操作由图形化界面完成)

-- 主键约束:PRIMARY KEY
-- 主键字段值作为一条数据的唯一标识,一个表的主键有且仅有一个。
-- 主键自动往往会结合自动增长(auto_increment)一起使用,只有当字段类型为int类型时才能自动增长。

-- 创建主键约束条件的表
CREATE TABLE 表名(
-- 字段名称 数据类型 约束条件
字段名 INT PRIMARY KEY
);
-- 删除主键   不能使用 MODIFY 修改,只能DROP 删除
ALTER TABLE 表名 DROP PRIMARY KEY;
-- 在已有的字段中添加主键
ALTER TABLE 表名 MODIFY 字段名 INT PRIMARY KEY;


-- 自动增长:auto_increment

-- 自动增长一般配合主键一同使用
CREATE TABLE 表名(
-- 字段名称 数据类型 约束条件
字段名 INT PRIMARY KEY auto_increment
);
-- 删除自动增长
ALTER TABLE 表名 MODIFY 字段名 INT;
-- 在已有字段添加自动增长
ALTER TABLE 表名 MODIFY 字段名 INT auto_increment;
-- 设置起始值
alter table 表名 auto_increment=起始值;


-- 非空约束:NOT NULL
-- 某一字段的值不能为空
CREATE TABLE 表名(
-- 字段名称 数据类型 约束条件
字段名 INT NOT NULL
);
-- 删除非空约束
ALTER TABLE 表名 MODIFY 字段名 INT;
-- 在已有字段添加非空约束
ALTER TABLE 表名 MODIFY 字段名 INT NOT NULL;

-- DEFAULT 默认值  
-- DEFAULT 后面接默认值,一般int 接 0; varchar 接 '';
-- 通常和非空约束一同使用
CREATE TABLE 表名(
-- 字段名称 数据类型 约束条件
字段名 INT NOT NULL DEFAULT 0
);
-- 删除默认值
ALTER TABLE 表名 MODIFY 字段名 INT NOT NULL;
-- 在已有字段添加默认值
ALTER TABLE 表名 MODIFY 字段名 INT NOT NULL DEFAULT 0;


-- 唯一约束:UNIQUE
-- 表示某一字段的值不能重发
-- 注意: 唯一约束有null值,但是只能一条记录为null
CREATE TABLE 表名(
-- 字段名称 数据类型 约束条件
字段名 INT UNIQUE
);
-- 删除唯一约束
ALTER TABLE 表名 DROP INDEX 字段名
-- 在已有字段添加唯一约束
ALTER TABLE 表名 DROP MODIFY 字段名 INT;


-- 外键约束:FOREIGN KEY
CREATE TABLE 表名(
-- 字段名称 数据类型 约束条件
字段名 INT UNIQUE
CONSTRAINT 外键名称 FOREIGN KEY (外键列名称) REFERENCES 主表名称(主表列名称);
);
-- 删除外键
ALTER TABLE 表名 DROP FOREIGN KEY 外键名称;
-- 在已有字段添加外键
ALTER TABLE 表名 ADD CONSTRAINT 外键名称 FOREIGN KEY (外键字段名称) REFERENCES 主表名称(主表列名称);

-- 外键的级联操作
-- 级联更新:ON UPDATE CASCADE
-- 级联删除:ON DELETE CASCADE
-- 添加级联操作
ALTER TABLE 表名 ADD CONSTRAINT 外键名称 FOREIGN KEY (外键字段名称) REFERENCES 主表名称(主表列名称) ON UPDATE CASCADE ON DELETE CASCADE;

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值