当前位置: 首页> 健康> 美食 > 广州网站建设出名 乐云践新_乐陵森大_网络广告一般是怎么收费_网络营销广告策划

广州网站建设出名 乐云践新_乐陵森大_网络广告一般是怎么收费_网络营销广告策划

时间:2025/7/9 10:49:49来源:https://blog.csdn.net/weixin_51304981/article/details/146987659 浏览次数:1次
广州网站建设出名 乐云践新_乐陵森大_网络广告一般是怎么收费_网络营销广告策划

MySQL数据类型

  • 1. 数据类型分类
  • 2. 数值类型
    • 2.1 tinyint类型
    • 2.2 bit类型
    • 2.3 float类型
    • 2.4 decimal类型
  • 3. 字符串类型
    • 3.1 char
    • 3.2 varchar
    • 3.3 日期和时间类型
    • 3.4 enum和set


1. 数据类型分类

数据库中的类型决定了在存储位置中,占据的空间大小以及如何识别的问题。

在这里插入图片描述


2. 数值类型


2.1 tinyint类型

在这里插入图片描述

修改类型:
在这里插入图片描述

mysql> create table tt1(num tinyint);
Query OK, 0 rows affected (0.02 sec)mysql> insert into tt1 values(128); -- 越界插入,报错
ERROR 1264 (22003): Out of range value for column 'num' at row 1
mysql> select * from tt1;
+------+
| num |
+------+
| 1 |
+------+
1 row in set (0.00 sec)

当我们插入数据的时候,数据本身是有自己的取值范围的,MySQL是不允许我们插入超出范围的数。——MySQL对于数据的存储有更严格的约束。

MySQL数据类型本身就是一种约束。

unsigned char c = -1; 
// C中,这个语句不会报错,会让我们写入(但是写入后值对不对就是未知的)
// 内存空间只认识二进制,是先把-1转化为二进制

在MySQL中,整型可以指定是有符号的和无符号的,默认是有符号的。
可以通过UNSIGNED来说明某个字段是无符号的

无符号案例:

mysql> create table tt2(num tinyint unsigned);mysql> insert into tt2 values(-1); -- 无符号,范围是: 0 - 255
ERROR 1264 (22003): Out of range value for column 'num' at row 1mysql> insert into tt2 values(255);
Query OK, 1 row affected (0.02 sec)mysql> select * from tt2;
+------+
| num |
+------+
| 255 |
+------+
1 row in set (0.00 sec)

注意:尽量不使用unsigned,对于int类型可能存放不下的数据,int unsigned同样可能存放不下,与其如此,还不如设计时,将int类型提升为bigint类型。


2.2 bit类型

bit[(M)] : 位字段类型。
M表示每个值的位数,范围从164。如果M被忽略,默认为1。
可以让我们对数据进行比特位的操作。
mysql> create table t2 ( id int, a bit(8));
Query OK, 0 rows affected (0.01 sec)mysql> insert into t2 values(10, 10);
Query OK, 1 row affected (0.01 sec)mysql> select * from t2; #发现很怪异的现象,a的数据10没有出现
+------+------+
| id | a |
+------+------+
| 10 | |
+------+------+
1 row in set (0.00 sec)

在这里插入图片描述
10的ASCII码是控制字符LF,控制字符不可显示。

bit使用的注意事项:
bit字段在显示时,是按照ASCII码对应的值显示。

mysql> insert into t2 values(65, 65);mysql> select * from t2;
+------+------+
关键字:广州网站建设出名 乐云践新_乐陵森大_网络广告一般是怎么收费_网络营销广告策划

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: