2.MySQL中的数据类型

整数类型:

tinyint(m): 1个字节 范围(-128~127) 常用:性别 0和1表示性别;状态 0和1表示

int(m): 4个字节 范围(-2147483648~2147483647) 常用:数值

数值类型中的长度m是值显示长度,只有字段指定zerofill时有用

例如:int(3),如果实际值是2,如果列指定了zerofill,查询结果就是002,左边用0来填充

代码实例:

复制代码
-- 创建表
CREATE TABLE my_table (
  my_column INT(3) ZEROFILL
);
​
-- 插入数据
INSERT INTO my_table (my_column) VALUES (2);
​
-- 查询数据
SELECT my_column FROM my_table;

浮点类型:

float(m,d): 单精度浮点型 8位精度(4字节)m总个数,d小数位

double(m,d): 双精度浮点型 16位精度(8字节)m总个数,d小数位

例如: 5.20 m为3,d为2

字符类型:

char(n): 固定长度,最多255个字节;适用:身份证号码、手机号等;

例如:char(5),存入了5,则数据库存储为: 5(用空格补);

tinytext: 可变长度,最多255个字符;

varchar(n): 可变长度,最多65535个字符;适用在长度可变的属性;

text: 可变长度,最多65535个字符;适用与当不知道属性的最大长度时;

medlumtext: 可变长度,最多2的24次方-1个字符;

longtext:可变长度,最多2的32次方-1个字符;

日期类型:

date: 日期 YYYY-MM-DD(年月日)

time: 时间 HH:MM:SS(时分秒)

datetime: 日期时间 YYYY-MM-DD HH:MM:SS

timestamp: 时间戳YYYYMMDD HHMMSS (格林威治时间1970年01月01日00时00分00秒(北京时间1970年01月01日08时00分00秒)起至现在的总秒数;

二进制数据(BLOB):

BLOB和TEXT存储方式不同,TEXT以文本方式存储,英文存储区分大小写,而Blob是以二进制方式存储,不分大小写;

BLOB存储的数据只能整体读出;

TEXT可以指定字符集,BLOB不能指定字符集;

相关推荐
敲个大西瓜4 小时前
Redis一百道核心面试题
数据库·redis·缓存
阿里云大数据AI技术4 小时前
EMR Serverless Spark AI Function 的双维降本实践
人工智能·sql·spark
無a伟7 小时前
Redis持久化详解:RDB与AOF原理、配置、优缺点
数据库
小罗水8 小时前
附录A 各微服务完整 application.yml 配置汇总
数据库·elasticsearch·微服务
muddjsv8 小时前
SQLite 外键进阶:CASCADE / SET NULL / 级联更新与完整性校验
数据库·sqlite
APItesterCris8 小时前
Open Claw 实战教程:5 分钟搭建京东商品自动化监控与数据分析系统
大数据·运维·数据库·数据仓库·自动化
Nturmoils8 小时前
查库存的 SQL 时灵时不灵,最后发现是 WHERE 里两个函数在打架
数据库
不想纳尼的青春9 小时前
where = 的作用?会影响性能吗?count(*) 和 count()哪个快?
数据库·oracle
倔强的石头_10 小时前
Spring Boot 接入金仓数据库:配置分层、启动自检与常见错误
数据库
杨云龙UP10 小时前
生产环境Oracle表空间扩容实战:使用Toad for Oracle图形界面新增Datafile(ASM+OMF)
linux·运维·数据库·oracle·表空间·asm 存储管理·toad