文章目录
3.3 修改数据表
我们如果要修改数据表,那我们应该用哪些形式来修改呢?一共有六种修改方式:**修改表名、修改字段名、修改字段的排列位置、修改字段的数据类型、删除字段、添加字段。**接下来我们就来详细看看:
(1) 修改表名
在数据库中,不同的数据表是通过表名来区分的,所以我们可以通过修改表名来达到修改数据表的效果。
语法格式:
ALTER TABLE 旧表名 RENAME [TO] 新表名;
其中,TO是可选的
(2) 修改字段名
数据表中的字段是通过字段名来区分的。
语法格式:
ALTER TABLE 修改前的字段名 修改后的字段名 新数据类型;
其中,新数据类型不能为空
(3) 修改字段的数据类型
语法格式:
ALTER TABLE 修改字段所在的表的名称 MODIFY 要修改的字段名 修改后字段的数据类型;
(4) 添加字段
语法格式:
ALTER TABLE 表名 ADD 新字段名 数据类型
[约束条件][FIRST AFTER 已存在字段名]
其中,"FIRST"是可选参数,用于将新添加的字段设置为表的第一个字段。"AFTER"也是可选参数,用于将新添加的字段添加到指定的“已存在字段名”的后面。
(5) 删除字段
语法格式:
ALTER TABLE 表名 DROP 字段名;
(6) 修改字段的排列位置
语法格式:
ALTER TABLE 表名 MODIFY 字段名a 数据类型 FIRST|AFTER 字段名b
其中,“字段名a”指的是修改位置的字段,“字段名b”是将字段a插入到字段b的后面。"FIRST"是可选参数,指将字段a修改为表的第一个字段
3.4 删除数据表
语法格式:
DROP TABLE 表名;
4. 表的约束
为了防止数据表中查入一些错误数据,在MySQL中定义了一些维护数据库完整性的规则,这些规则就是表的约束。下面列举的约束条件均是针对表中字段进行的限制,以此来保证表中数据的正确性与唯一性。
约束条件 | 说明 |
---|---|
PRLMARY KEY | 主键约束,用于唯一标识对应的记录 |
FOREIGN KEY | 外键约束 |
NOT NULL | 非空约束 |
UNIQUE | 唯一性约束 |
DEFAULT | 默认值约束,用于设置字段的默认值 |
4.1 主键约束
通过主键可以快速查找表中的某条信息,它可以标识表中的记录。每个数据表中最多有一个主键约束,定义为PRIMARY KEY的字段不能有重复值且不能为NULL值。
(1) 单字段主键
单字段主键指由一个字段构成的主键。
语法格式:
字段名 数据类型 PRIMARY KEY
(2) 多字段主键
多字段主键指由多个字段组合而成的主键。
语法格式:
PRIMARY KEY(字段名1,......)
4.2 非空约束
非空约束指字段值不能为NULL。
语法格式:
字段名 数据类型 NOT NULL;
4.3 唯一约束
唯一约束用于保证数据表中字段的唯一性,即表中字段不可以重复出现。
语法格式:
字段名 数据类型 UNIQUE;
4.4 默认约束
默认约束用于给表中字段指定默认值,即当在表中插入一条新记录时,如果没有给这个字段赋值,则数据库系统会自动为这个字段插入默认值。
语法格式:
字段名 数据类型 DEFAULT 默认值;
4.5 设置表的字段自动增加
在数据表中,若想为表中插入的新记录自动生成唯一的ID,可以用AUTO_INCREMENT约束进行实现。AUTO_INCREMENT约束的字段可以是任何整数类型,默认情况下,该字段的值是从1开始自动增加的。
语法格式:
字段名 数据类型 AUTO_INCREMENT;
5. 索引
索引是对数据库中一列或者多列的值进行排序后的一种结构,它的作用就是提高表中数据的查询速度。索引可以分为六种:普通索引、唯一性索引、全文索引、单例索引、多例索引、空间索引。
分类 | 说明 |
---|---|
普通索引 | 由KEY或INDEX定义的索引,它是MySQL中的基本索引类型,可以创建在任何数据类型中,其值是否唯一和非空由字段本身的约束条件所决定。 |
唯一性索引 | 由UNIQUE定义的索引,该索引所在字段的值必须是唯一的 |
全文索引 | 由FULLTEXT定义的索引,它只能创建在CHAR、VARCHAR或TEXT类型的字段上,而且,现在只有 MylSAM存储引擎支持全文索引。 |
单例索引 | 指在表中单个字段上创建索引,它可以是普通索引、唯一索引或者全文索引,只要保证该索引只对应表中一个字段即可 |
多列索引 | 指在表中多个字段上创建索引,只有在查询条件中使用了这些字段中的第一个字段时,该索引才会被使用 |
空间索引 | 由SPATIAL定义的索引,它只能创建在空间数据类型的字段上 |