mysql 字段类型text是否可以有默认值

content text NOT NULL default '',
这是一行创建表字段的代码,但是在创建时,提示说text类型不能有默认值,请问这是怎么回事?

不可以有默认值。

mysql text类型没有默认值,如果该字段没有值,则该字段是空,即is null ,使用select语句时应注意:(test是表名,description是字段名,类型是text) 。

select * from test where description = null;   等价为 select * from test where description = 'null'。

即此时description 值是null才可以取出。 

如果description字段没有填入值,是系统设置的,则执行 select * from test where description is null,即可。

mySQL(关系型数据库管理系统

MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下产品。

MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是最好的 RDBMS (Relational Database Management System,关系数据库管理系统) 应用软件。

MySQL是一种关系数据库管理系统,关系数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。

MySQL所使用的 SQL 语言是用于访问数据库的最常用标准化语言。

MySQL 软件采用了双授权政策,分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择 MySQL 作为网站数据库。

由于其社区版的性能卓越,搭配 PHP 和 Apache 可组成良好的开发环境。

温馨提示:内容为网友见解,仅供参考
第1个回答  2015-10-15
在my.ini中将 STRICT_TRANS_TABLES 去掉即可。
第2个回答  2013-05-27
你让他可以为空就OK了嘛 你想要什么默认值??
你在前台程序中判断如果是空的话 就给个提示出来就是了 何必用默认值呢??? 就算是要默认值 你没有给定默认值到底是多少的

mysql 字段类型text是否可以有默认值
不可以有默认值。mysql text类型没有默认值,如果该字段没有值,则该字段是空,即is null ,使用select语句时应注意:(test是表名,description是字段名,类型是text) 。select * from test where description = null; 等价为 select * from test where description = 'null'。即此时description ...

mysql中text是什么意思?
1、text存储可变长度的非Unicode数据,最大长度为2^31-1个字符。2、text列不能有默认值,存储或检索过程中,不存在大小写转换,后面如果指定长度,不会报错误,但是这个长度是不起作用的,意思就是你插入数据的时候,超过你指定的长度还是可以正常插入。

MySQL中使用text格式字段的注意事项mysql中text格式
3. text类型可以使用各种字符集和校对规则。4. text类型不能设置默认值。5. text类型一般用在MyISAM存储引擎中,而不是InnoDB存储引擎中。三、text格式字段的使用注意事项 1. 避免频繁更新大量文本数据 由于text类型的数据存储在磁盘上,所以在频繁更新、插入和删除大量文本数据时会极大的影响性能,因此在...

深刻理解,mysql为什么不建议使用text字段?
在MySQL较新版本中,若启用Strict Mode,Text字段不允许设定默认值,可能导致表结构创建时的错误。转换Text字段为LongText或MediumText类型,如需进行,转换过程既耗时又可能需要额外存储空间,数据迁移成本高。因此,设计数据库时,存储长文本数据应首选LongText或MediumText类型,允许更大数据量。若数据量超过限...

Mysql 中的Text字段的范围?与使用方法!
这些类型可以视为MySQL对Oracle CLOB的对应,分为TINYTEXT(256字节)、TEXT、MEDIUMTEXT和LONGTEXT,分别对应不同的数据长度级别。使用这些类型时,需要注意的是,过多的text字段可能导致"Row size too large"错误,意味着行的内容超过限制。解决办法是检查并调整系统参数,如max_sort_length,其默认值为1024...

MySQL中字段类型char、varchar和text的区别
text:存储可变长度的非Unicode数据,最大长度为2^31-1个字符。text列不能有默认值,存储或检索过程中,不存在大小写转换,后面如果指定长度,不会报错误,但是这个长度是不起作用的,意思就是你插入数据的时候,超过你指定的长度还是可以正常插入。关于存储空间:在使用UTF8字符集的时候,MySQL手册上是...

mysql中char,varchar与text类型的区别和选用
但是长度范围是0~255 varchar数据类型的长度支持到了65535字节 text:与char和varchar不同的是,text不可以有默认值,其最大长度是2的16次方-1 总结起来,有几点:经常变化的字段用varchar 知道固定长度的用char 尽量用varchar 超过255字符的只能用varchar或者text 能用varchar的地方不用text ...

MySQL列初始值探索数据表的默认设置mysql中列初始值
在默认情况下,MySQL采用以下规则为不同类型的列设置初始值:– 如果列定义为整数类型(如INT,TINYINT,BIGINT等),默认值为0;– 如果列定义为浮点型(如FLOAT,DOUBLE等),默认值为0.0;– 如果列定义为TEXT,MEDIUMTEXT,LONGTEXT,VARCHAR等文本类型,其默认值为空字符串&#...

mysql中的text长度到底是多少
在MySQL数据库中,text类型字段的长度有着明确的限制。默认情况下,text列的最大长度被限制为65,535个字符,这是2的16次方减一,即16进制的0xFFFF。如果你处理的文本数据超过了这个限制,可以考虑使用更高级的text变体。MEDIUMTEXT类型提供了一个更大的容量,其最大长度可达16,777,215字符,足以满足大...

mysql中text最大能长到多少
text列不能有默认值,存储或检索过程中,不存在大小写转换,后面如果指定长度,不会报错误,但是这个长度是不起作用的,意思就是你插入数据的时候,超过你指定的长度还是可以正常插入。MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下产品。MySQL 是最流行的关系型数据库...

相似回答