在线客服
扫描二维码
下载博学谷APP扫描二维码
关注博学谷微信公众号
MySQL数据库的基本使用之数据类型和约束,数据类型包含整数类型、浮点数、字符串、日期等。储存在数据库中的所有数据值均为正确的状态,如有不正确数据则称为已丧失数据完整性。
学习目标:掌握数据类型和数据约束的作用
数据库中的数据保存在数据表中,在表中为了更加准确的存储数据保证数据的正确有效,可以在创建表的时候为表添加一些强制性的验证,如:数据类型和约束。
1. 数据类型
数据类型是指在创建表的时候为表中字段指定数据类型,只有数据符合类型要求才能存储起来,使用数据类型的原则是:够用就行,尽量使用取值范围小而不用大这样可以更多的节省存储空间。
常用数据类型如下:
整数:int,bit
小数:decimal
字符串:varchar,char
日期时间: date, time, datetime
枚举类型(enum)
数据类型说明:
decimal表示浮点数,如 decimal(5, 2) 表示共存5位数,小数占 2 位.
char表示固定长度的字符串,如char(3),如果填充'ab'时会补一个空格为'ab ',3表示字符数
varchar表示可变长度的字符串,如varchar(3),填充'ab'时就会存储'ab',3表示字符数
对于图片、音频、视频等文件,不存储在数据库中,而是上传到某个服务器上,然后在表中存储这个文件的保存路径.
字符串 text 表示存储大文本,当字符大于 4000 时推荐使用, 比如技术博客.
2. 数据约束
约束是指数据在数据类型限定的基础上额外增加的要求.
常见的约束如下:
主键 primary key: 物理上存储的顺序. MySQL 建议所有表的主键字段都叫 id, 类型为 int unsigned.
非空 not null: 此字段不允许填写空值.
惟一 unique: 此字段的值不允许重复.
默认 default: 当不填写字段对应的值会使用默认值,如果填写时以填写为准.
外键 foreign key: 对关系字段进行约束, 当为关系字段填写值时, 会到关联的表中查询此值是否存在, 如果存在则填写成功, 如果不存在则填写失败并抛出异常.
3. 数据类型附录表
(1) 整数类型
(2)字符串
(3)时间类型
4. 小结
常用的数据类型:整数:int,bit、小数:decimal、字符串:varchar,char、日期时间: date, time, datetime、枚举类型(enum);常见的约束:主键约束 primary key、非空约束 not null、惟一约束 unique、默认约束 default、外键约束 foreign key。数据类型和约束保证了表中数据的准确性和完整性
— 申请免费试学名额 —
在职想转行提升,担心学不会?根据个人情况规划学习路线,闯关式自适应学习模式保证学习效果
讲师一对一辅导,在线答疑解惑,指导就业!
相关推荐 更多
Python学习之数据库操作 详细讲解
我们都知道,Python数据库接口支持非常多的数据库,学习Python就不得不学习数据库操作。因此本文将详细为大家讲解Python数据库的两种操作,希望对大家有所帮助。
6744
2019-08-05 11:29:08
6个技巧帮你提高Python运行效率
随着国内对人工智能领域发展的大力支持,Python编程语言成为国内使用增长率的最大的编程语言。越来越多的人加入Python的学习行列,企业对Python的使用也越来越普遍。Python能够让你在端时间内通过少量代码,实现大量的操作。这里小编整理了6个Python编程技巧,帮你提高Python的运行效率。
5887
2019-12-05 18:51:03
为什么学Python有前途?
目前凡是做IT培训的就没有不开Python课的,上半年更是出现了学python热,社交网络随处可见相关课程的试课信息。现在仍有不少人跃跃欲试。如果你还不明白大家为什么对学Python抱有如此大的热情,不如看看下面的行业发展介绍。了解下现在学Python还有前途吗?能做什么?
3912
2020-06-18 15:55:55
Python入门简单吗?怎么学Python?
Python在机器学习人工智能领域非常流行,可以说是算法工程师的标配编程语言。Python语言广泛应用在web开发、大数据开发、人工智能开发、机器学习、后端开发等领域之中,近几年Python语言的趋势不断上升发展前景好。
3865
2020-09-24 14:54:24
入门Python基础知识点总结
Python基础入门主要学习变量,运算符,输入输出和条件以及循环语句,认识Python零基础入门Python开发,了解常用的Linux命令。熟练掌握Python的变量、输入输出、运算符、条件和循环语句,了解使用过常用linux命令。
3370
2021-06-09 16:55:44