欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

MySQL数据库补充

程序员文章站 2022-03-03 19:50:43
...

查看表结构

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 表名;
相关标签: mysql 数据库