数据库中的数据类型
可通过 help data types; 查询所有支持的数据类型
1 | mysql> help data types; |
1 | You asked for help about help category: "Data Types" |
可通过 help datatype_name; 查询具体的数据类型详细信息
1 | mysql> help int; |
整型类型
1 | TINYINT |
浮点型
1 | FLOAT |
日期与时间类型
1 | YEAR |
日期和时间类型的使用
1 |
|
字符和字符串类型
1 | CHAR |
CHAR 类型和 VARCHAR 类型
用法: CHAR(M) VARCAHR(M)
CAHR 类型长度是固定的
VARCAHR 类型长度是变的
其他类型
1 | # 未完待续··· |
创建表
语法形式如下:
1 | CREATE TABLE tablename( |
创建表 t_calss
1 | mysql> CREATE TABLE t_class( |
查看表的定义
DESCRIBE 语句查看表的定义
DESCRIBE 语法句式如下:
1 | DESCRIBE tablename; or DESC tablename; |
1 | mysql> desc t_class; |
SHOW CREATE TABLE 语句查看详细建表定义
语法形式如下:
1 | SHOW CREATE TABLE tablename; |
1 | mysql> SHOW CREATE TABLE t_class; |
删除表
语法形式如下:
1 | DROP TABLE tablename; |
删除表 t_calss
1 | mysql> DROP TABLE t_class; |
检验是否删除成功
1 | mysql> DESC t_class; |
修改表
修改表名
语法形式如下:
1 | ALTER TABLE oldTablename RENAME [TO] newTablename; |
将表t_calss的名字改为tab_class
1 | mysql> ALTER TABLE t_class RENAME TO tab_class; |
检验是否修改成功
1 | mysql> DESC t_class; |
增加字段
语法形式如下:
1 | ALTER TABLE tablename ADD propName propType; # propName 字段名 propType 字段类型 字段会添加代最后一个位置 |
在表t_calss中添加advisor字段
1 | mysql> DESC t_class; |
在表t_calss的第一个位置添加advisor字段
1 | mysql> ALTER TABLE t_class ADD advisor VARCHAR(20) FIRST; |
在表t_calss的cname后添加advisor字段
1 | mysql> ALTER TABLE t_class ADD advisor VARCHAR(20) AFTER cname; |
删除字段
语法形式如下:
1 | mysql> ALTER TABLE t_class DROP advisor; |
修改字段
根据创建表的语法,字段是由字段名和字段类型定义的。修改字段除了可以修改字段名,还可以修改字段的数据类型。由于表中拥有很多字段,因此还可以修改字段顺序。
语法形式如下:
1 | ALTER TABLE tablename MODIFY propNmae propType; |
修改classno
1 | mysql> ALTER TABLE t_class CHANGE classno classid VARCHAR(20); |
将表t_calss中classno调整到字段cname之后
1 | mysql> ALTER TABLE t_class MODIFY classno INT AFTER cname; |
修改字段数据类型
1 | mysql> desc t_class; |
操作标的约束
完整性约束条件
| 约束条件 | 说明 |
|---|---|
| PRIMARY KEY | 标识该属性为该标的主键,可以唯一标识对应的元组 |
| FOREIGN KEY | 标识该属性为该标的外键,与之联系的是某表的主键 |
| NOT NULL | 标识该属性不能为空 |
| UNIQUE | 标识该属性的值是唯一的 |
| AUTO_INCREMENT | 标识该属性得值自动增加,这是MySQL语句的特色 |
| DEFAULT | 为该属性设置默认值 |
设置表字段的非空约束(NOT NULL , NK)
1 | CREATE TABLE tablename( |
设置表字段的默认值(DEFAULT)
1 | CREATE TABLE tablename( |
设置表字段的唯一约束(UNIQUE)
1 | CREATE TABLE tablename( |
设置表字段的主键约束(PRIMARY KEY)
主键是表的特殊字段,能唯一标识表中的每条信息
单字段主键
1 |
|
多字段主键
主键是由多个属性组合而成时,在属性定义完之后统一设置主键。
1 | CREATE TABLE tablename( |
设置表字段的外键约束(FOREIGN KEY, FK)
外建是表的一个特殊字段,外键约束是为了保证多个表(通常是两个表)之间的参照完整性,即构造两个表的字段之间的参照关系。
设置外键约束的两个表之间具有父子关系,即子表中的某个字段的取值范围由父表决定。
在具体设置FK约束时,设置FK约束的字段必须依赖于数据库中以经存在的父表的主键,同时外键可以为空(NULL).
1 | CREATE TABLE tablename_1( |
tablename_1 参数是要设置外键的表名
porpName1_1 参数是设置外键的字段
tablename_2 是父表的名称
porpName2_1 是父表中设置主键约束的字段名
1 | mysql> CREATE TABLE t_class( |
1 | mysql> CREATE TABLE t_student( |
使用架构设计器查看的效果(SQLyog)

- 本文作者: Coderyy
- 本文链接: https:/github.com/iforeverhz/2020/02/16/MySql表相关操作/
- 版权声明: 本博客所有文章除特别声明外,均采用 MIT 许可协议。转载请注明出处!
