MySQL自增主键与TEXT数据类型的正…

本文介绍了MySQL中自增主键与TEXT数据类型的使用,包括TINYTEXT到BIGTEXT的长度规格,以及如何创建包含自增主键和TEXT列的表。同时,解释了字符集和校对规则的概念,如utf8_general_ci的含义。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

此文章主要向大家描述的是MySQL自增主键与TEXT数据类型的正确使用方案, 有时我们会用到MySQL数据库,并且还要用到起自增主键与TEXT数据类型。为了防止忘记,先记录下TEXT数据类型长度:

  1. TINYTEXT: 256 bytes   
  2. TEXT: 65,535 bytes => ~64kb   
  3. MEDIUMTEXT: 16,777,215 bytes => ~16MB   
  4. BIGTEXT: 4,294,967,295 bytes => ~4GB 

我要建的表,主键使用自增数字,有一个数据列要使用TEXT数据类型存放文本,则可写SQL如下:

 
 
  1. CREATE TABLE Corpus  
  2. (  
  3. id MEDIUMINT UNSIGNED NOT NULL AUTO_INCREMENT,  
  4. data TEXT CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL,  
  5. PRIMARY KEY (id) 

)先解释两个概念:

字符集是一套符号和编码。CHARACTER SET X 表示设置字符集为X。

校对规则是在字符集内用于比较字符的一套规则。存在校对规则命名约定:它们以其相关的字符集名开始,通常包括一个语言名,并且以_ci(大小写不敏感)、_cs(大小写敏感)或_bin(二元)结束。

COLLATE utf8_general_ci 表示utf8_general的不区分大小写的校对规则(貌似是utf8字符集的默认校对规则,使用“show collation like ‘utf8%’;”查看)。 其中表名为Corpus。主键为id,使用MEDIUMINT数据类型,可以表示1-999999间整数(大概值,不准确,便于记忆~);UNSIGNED表示无符号型;AUTO_INCREMENT表示自增。data列使用TEXT数据类型,并且设置该列的字符集为utf8,校对规则为utf8_general且大小写不敏感。

MySQL自增主键
 

上述的相关内容就是对MySQL自增主键以及TEXT数据类型使用的描述,希望会给你带来一些帮助在此方面。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值