MYsql 怎么约束列的取值范围

MYsql 怎么约束列的取值范围,第1张

MYsql 怎么约束列的取值范围

一般是建立check约束。例如设置sex一列取值只能为'男'或'女' 建表tab10时命令为create table tabl0 (sex char(2) check(sex in ('男','女'))..

数据类型         字节数            范围                      无符号范围

TINYINT           1字节         -128~127                    0~255

FLOAT               4字节

DOUBLE           8字节

DECIMAL         8字节

CHAR                  M个字节 0<=M<=255

VARCHAR         l+1个字节  l<=M 0<=M<=255

如果超出数据的范围 会产生截断  超出最小值则按照最小值   超出最大值则按照最大值

显示长度与数据的宽度是没有关系的

测试浮点型

            float,double的数据类型会自动根据需要显示的数据长度进行四舍五入

测试字符串类型

CHAR的效率高于VARCHAR   CHAR是拿空间换取时间  VARCHAR是拿时间换取空间

CHAR默认存储数据的时候,后面会用空格填充到指定长度,而在检索的时候去掉后面的空格VARCHAR存储的时候不进行填充,尾部的空格会留下

TEXT相关的列不能有默认值,检索的时候不存在大小写转换

测试ENUM/SET类型

测试集合

测试日期时间类型

TIME     [D]   HH:MM:SS       D表示天数0~34

       例子:2   3:34:30      =》2*24+3:34:30

测试DATE类型

DATE    YYYY-MM-DD   /YYYYMMDD

测试DATETIME

测试TIMESTAMP

测试YEAR


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/8515947.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-17
下一篇 2023-04-17

发表评论

登录后才能评论

评论列表(0条)

保存