创建表
创建的语法如下
创建表之前需要先指定数据库
create table tableName{属性名 数据类型 约束, # 每列使用逗号隔开..........};
具体实例
创建一张学生表,包括名称,年龄,性别
create table stu{name varchar(10),age int,sex varchar(5)};
表的约束
MySQL中支持如下一些约束
- NOT NULL 非空
- DEFAULT 默认值
- UNIQUE KEY 字段的值唯一
- PRIMARY KEY 主键
- AUTO_INCREMENT 自增
- FOREIGN KEY 外键
不支持check约束
实例
CREATE TABLE teacher(tno int primary key,tname varchar(20) NOT NULL,tage int,xueyuan varchar(20) default '计算机学院',);
#外键的设置麻烦一点constraint fkname foreign key(本表的外键) references tableName(另一张表的主键)# constraint fkname的意思是给这个外键设置一个名字
查看表的结构
有两条语句可以查看,但是它们也有不同
- DESCRIBE 语句可以查看表的定义
- SHOW CREATE TABLE 语句查看表的详细信息
# DESCRIBE用法DESC tableName # 可以简写desc
#用法SHOW CREATE TABLE tableName# 可以查看表的详细信息
删除表
删除表使用的不是DELETE而是DROP,用法如下
DROP TABLE tableName
修改表
修改表名
语法如下
alter table aldName rename new name
具体实例
将stu表的名称修改为student
ALTER TABLE stu rename student;
增加字段
向已经存在的表中添加字段还是使用ALTER,语法如下
ALTER TABLE tableName add 属性名 属性类型;
具体实例
向stu表中增加一个字段学号sno
ALTER TABLE stu ADD sno int;
在表的最开始添加字段
使用add语法 + first
ALTER TABLE tableName add 属性名 属性类型 + first;
具体实例
将cno字段添加到stu表的最前面
ALTER TABLE stu ADD cno INT FIRST;
在表的指定字段之后添加字段
使用add语法 + AFTER + 指定属性名
ALTER TABLE tableName add 属性名 属性类型 + after + 指定属性名;
具体实例
将cno字段添加到stu表中的sno字段之后
ALTER TABLE stu ADD cno INT AFTER sno;
删除字段
直接上语法
alter table tableName drop 属性名
具体实例
将stu表中cno字段删除
ALTER TABLE stu DROP cno;
修改字段数据类型
使用的是MODIFY语法,语法如下:
alter table tableName modify 属性名 新数据类型
具体实例
将stu表中的name字段的数据类型修改为char(20)
ALTER TABLE stu MODIFY name char(20);
修改字段的名称
使用的是change语法,语法如下:
alter table tableName change 旧属性名 新属性名 旧数据类型
具体实例
修改stu表中的sex字段名为Ssex
ALTER TABLE stu CHANGE sex Ssex varchar(3);
alter 语句的用法总结
alter是修改的意思 它的用法一通百通,以表为例则写成:alter table
具体是哪一张表则在命令的后面加上具体表名:alter table t_users + 参数 + 参数值
参数
- add 增加字段,first和after的使用
- drop 删除字段
- modify 修改字段数据类型,字段顺序
- change 修改字段名称和数据类型
- rename 修改表的名字
