Mysql数据类型和约束

数据类型
  • 常用的数据类型如下:
    • 整数:int 、bit
    • 小数:decimal
    • 字符串:varchar 、char
    • 日期时间:date 、time 、datetime
    • 枚举类型(enum)
  • 特别说明的类型如下:
    • decimal表示浮点数,如decimal(5, 2)表示共存5位小数,小数占2位
    • char表示固定长度的字符串,如char(3),如果填充’ab’时就会补一个空格为‘ab ’
    • varchar表示可变长度的字符串,如varchar(3),填充’ab’时就会储存’ab’
    • 字符串text表示储存大文本,当字符大于4000时推荐使用
    • 对于图片、音频、视频等文件,不储存在数据库中,而是传到某个服务器上,然后在表中储存这个文件的保存路径
约束
  • 主键primary key:物理上储存的顺序
  • 非空 not null:此字段不允许填写空值
  • 唯一unique:此字段的值不允许重复
  • 默认default:当不填写此值时会使用默认值,如果填写时以填写为准
  • 外键foreign key:对关系字段进行约束,当为关系字段填写时,会到关联的表中查询此值是否存在,如果存在则填写成功,如果不存在则填写失败并抛出异常
  • 说明:虽然外键约束可以保证数据的有效性,但是在进行数据的crud(增加、修改、删除、查询)时,都会降低数据库的性能,所以不推荐使用,那么数据的有效性就需要我们在逻辑层进行控制。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值