基本语法
-- 显示所有数据库 show databases; -- 创建数据库 CREATE DATABASE test; -- 切换数据库 use test; -- 显示数据库中的所有表 show tables; -- 创建数据表 CREATE TABLE pet ( name VARCHAR(20), owner VARCHAR(20), species VARCHAR(20), sex CHAR(1), birth DATE, death DATE ); -- 查看数据表结构 -- describe pet; desc pet; -- 查询表 SELECT * from pet; -- 插入数据 INSERT INTO pet VALUES (‘puffball‘, ‘Diane‘, ‘hamster‘, ‘f‘, ‘1990-03-30‘, NULL); -- 修改数据 UPDATE pet SET name = ‘squirrel‘ where owner = ‘Diane‘; -- 删除数据 DELETE FROM pet where name = ‘squirrel‘; -- 删除表 DROP TABLE myorder;
建表约束
主键约束
-- 主键约束 -- 使某个字段不重复且不得为空,确保表内所有数据的唯一性。 CREATE TABLE user ( id INT PRIMARY KEY, name VARCHAR(20) ); -- 复合主键 -- 复合主键中的每个字段都不能为空,并且加起来不能和已设置的联合主键重复。 CREATE TABLE user ( id INT, name VARCHAR(20), password VARCHAR(20), PRIMARY KEY(id, name) ); -- 自增约束 -- 自增约束的主键由系统自动递增分配。 CREATE TABLE user ( id INT PRIMARY KEY AUTO_INCREMENT, name VARCHAR(20) ); -- 添加主键约束 -- 如果忘记设置主键,还可以通过SQL语句设置(两种方式): ALTER TABLE user ADD PRIMARY KEY(id); ALTER TABLE user MODIFY id INT PRIMARY KEY; -- 删除主键 ALTER TABLE user drop PRIMARY KEY;
唯一约束
-- 建表时创建唯一约束 -- 和主键约束的区别是可以有null CREATE TABLE user ( id INT, name VARCHAR(20), UNIQUE(name) ); -- 添加唯一约束 -- 如果建表时没有设置唯一约束,还可以通过SQL语句设置(两种方式): ALTER TABLE user ADD UNIQUE(name); ALTER TABLE user MODIFY name VARCHAR(20) UNIQUE; -- 删除唯一约束 ALTER TABLE user DROP INDEX name;
非空约束
原文:https://www.cnblogs.com/zhou-xian-sheng/p/12593559.html