MySQL数据库补充

tech2024-08-17  41

查看表结构

DESC 表名;

表处理

# 修改字段名以及数据类型和约束 ALTER TABLE 表名 CHANGE 原字段名 新字段名 数据类型 约束; # 修改字段的数据类型和约束 ALTER TABLE 表名 MODIFY 字段名 数据类型 约束; # 增加字段 ALTER TABLE 表名 ADD 字段名 数据类型 约束; # 删除字段 ALTER TABLE 表名 DROP 字段名; ALTER TABLE 表名 DROP COLUMN 字段名; # 修改表名 ALTER TABLE 原表名 RENAME TO 新表名; # 复制表结构 DESC 表名; #查看表结构 CREATE TABLE 新表名 LIKE 原表名; # 复制表结构和内容 CREATE TABLE 新表名 SELECT * FROM 原表名; # 找出单价小于10块钱的书籍,并且插入信标 CREATE TABLE 新表名 SELECT * FROM 原表名 WHERE 条件语句(单价<10); # 复制表指定字段,但是不带数据 CREATE TABLE 新表名 SELECT 字段名1,字段名2,字段名3 FROM 原表名 WHERE 不成立的条件语句 (如 0=1)

字段约束与表记约束

表结构 数据库由多张表组成 create table 表名( 字段名1 数据类型 字段约束, 字段名2 数据类型 字段约束 ); 分类 ————字段约束 ————表级约束 # 创建表————字段约束 CREATE TABLE userinfo( id INT PRIMARY KEY, # 设置主键 username VARCHAR(20) NOT NULL, gender VARCHAR(3) CHECK(gender='男'organder='女'), # mysql中CHECK不生效 phone CHAR(11) UNIQUE, # 设置唯一 age INT DEFAULT 18, address INT REFERENCES address(id) # 外键 ); CREATE TABLE address( id INT PRIMARY KEY, pname VARCHAR(50) NOT NULL ); # 创建表————表级约束 CREATE TABLE newuserinfo( id INT, # 设置主键 username VARCHAR(20), gender VARCHAR(3), phone CHAR(11), # 设置唯一 age INT, address INT # 外键 CONSTRAINT pkey PRIMARY KEY(id), CONSTRAINT uqkey UNIQUE(phton), CONSTRAINT ck CHECK(gender='男' OR gender='女'),# mysql中CHECK不生效 CONSTRAINT fk FOREIGN KEY(address) REFERENCES address(id) ); # 通用格式 CREATE TABLE userinfo( id INT PRIMARY KEY, # 设置主键 username VARCHAR(20) NOT NULL, gender VARCHAR(3), phone CHAR(11) UNIQUE, # 设置唯一 age INT DEFAULT 18, address INT, # 外键写在表级约束里面 CONSTRAINT fk FOREIGN KEY(address) REFERENCES address(id)# 外键 );

查看建表语句

SHOW CREATE TABLE 表名;

查看约束

SHOW INDEX FROM 表名;
最新回复(0)