🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
![](https://img.kancloud.cn/41/e0/41e066af9a6c25a24868d9667253ec98_1241x333.jpg) ***** ## 数据完整性 在表中为了更加准确的存储数据,保证数据的正确有效,可以在创建表的时候,为表添加一些强制性的验证,包括数据字段的类型、约束 ### 常见的数据类型 - 整数:int - 小数:decimal - 字符串:varchar,char - 日期时间: date, time, datetime - 枚举类型:enum ### 特别说明的类型 decimal表示浮点数,如decimal(5,2)表示共存5位数,小数占2位 <br>char表示固定长度的字符串,如char(3),如果填充'ab'时会补一个空格为'ab ' <br>varchar表示可变长度的字符串,如varchar(3),填充'ab'时就会存储'ab' <br>字符串text表示存储大文本,当字符大于4000时推荐使用 <br>对于图片、音频、视频等文件,不存储在数据库中,而是上传到某个服务器上,然后在表中存储这个文件的保存路径 <br> 更全的数据类型可以参考:http://blog.csdn.net/anxpp/article/details/51284106 ### 数值类型 ![](https://img.kancloud.cn/bf/63/bf63731bbe4e58a28a8315f50a92300e_772x295.png) ### 字符串 ![](https://img.kancloud.cn/dd/e1/dde1a7ebe2a1d6830c5bfe5b26aded65_770x161.png) ### 日期时间类型 ![](https://img.kancloud.cn/fe/91/fe91d5370ea71fbaacd699c80865d81a_770x242.png) ## 约束 * 主键primary key:物理上存储的顺序 * 非空not null:此字段不允许填写空值 * 惟一unique:此字段的值不允许重复 * 默认default:当不填写此值时会使用默认值,如果填写时以填写为准 * 外键foreign key:对关系字段进行约束,当为关系字段填写值时,会到关联的表中查询此值是否存在,如果存在则填写成功,如果不存在则填写失败并抛出异常