🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
所谓建表就是声明表头(很多列字段)的过程。 表头 学号(列1) 姓名(列2) 行1 aa bb 行2 cc dd 声明列的时候有修饰符的概念,它的学名叫“完整性约束”,是为了保证数据库中的完整性而制定的一套规范。 create table table_name( column_definition, ... )engine=myisam/innodb/bdb charset=utf8/gbk/latin1...; 几个关键的修饰符: 1、主键 主键 (primary key) 中的每一笔资料都是表格中的唯一值。换言之,它是用来独一无二地确认一个表格中的每一行资料。 主键可以是原本资料内的一个栏位,或是一个人造栏位 (与原本资料没有关系的栏位)。 主键可以包含一或多个栏位,当主键包含多个栏位时,称为组合键 (composite key)。 主键两个特性: 唯一性:一张表只能有一个主键,是为了防止存储冗余数据。 排他性:主键不能重复,是为了防止存储错误数据。 主键声明语法: 可以在声明字段时使用primary key修饰符(只能用于主键为一个字段的情况)。 也可以在写完所有字段后使用primary(key1,key2,...)。 2、唯一主键和自增 在生产环境中更倾向于使用一个字段作为主键,因为一个字段比多个处理起来更简单方便。 通常用一个正整数的字段表示主键,它还拥有一些其他特性,比如自增、非空等。 声明语法: id int primary key auto_increment, 这样在插入数据的时候,不用指定主键值,它会自动增加填充。 修改自增值: alter table auto_increment=100; 3、非空 使用not null修饰,在插入数据时,如果非空列没有值,就会报错无法插入。 声明语法: name varchar(30) not null, 在修饰主键时会默认加上not null的修饰,所以无需指定。 4、不可重复 使用unique修饰,在插入数据时,如果该列值已经其它行已存在,就会报错拒绝执行。 声明语法: name varchar(30) unique, 在修饰主键时会默认加上unique的修饰,所以无需指定。 5、默认值 当我们在插入数据中,没有指定某一列的值,可以使用default ''来指定默认填充值。 声明语法: name varchar(30) default '张三', 6、其它 无符号(unsigned),只对数值类型有效,比如tinyint类型范围是-128-127,用unsigned修饰后范围只能为0-255。 zerofill,用0补充长度到指定宽度显示器长度,使用了zerofill就意味着是unsigned数据,因为负数前补0没有意义。