MySQL模式 Strict Mode知识点详解
发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,I. Strict Mode阐述根据 mysql5.0以上版本 strict mode (STRICT_TRANS_TABLES) 的限制:1).不支持对not null字段插入null值2).不支持
千家信息网最后更新 2026年11月01日MySQL模式 Strict Mode知识点详解
I. Strict Mode阐述
根据 mysql5.0以上版本 strict mode (STRICT_TRANS_TABLES) 的限制:
1).不支持对not null字段插入null值
2).不支持对自增长字段插入''值,可插入null值
3).不支持 text 字段有默认值
看下面代码:(第一个字段为自增字段)
Sql代码
$query="insert into demo values('','$firstname','$lastname','$sex')"; 上边代码只在非strict模式有效。
Code代码
$query="insert into demo values(NULL,'$firstname','$lastname','$sex')";
上边代码只在strict模式有效。把空值''换成了NULL.
II.让数据库支持Strict Mode
1.对数据库结构进行以下改进来支持strict mode:
1) 给所有not null字段都设置非null默认值,字符串默认值为 '',数值默认值为 0,日期默认值为 '0000-00-00 00:00:00'
2) 去掉text字段的默认值
3) 规范化改进: 把 title 字段统一改为 varchar(255),把有默认值的null字段改为not null字段
2.如果安装的PHP程序数据库结构关闭Strict mode
1).一个是安装mysql5.0(含以上)版本的时候去掉strict mode。
编辑 my.cnf,关闭Strict Mode:
sql-mode="NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"
2). 另一个就是修改查询语句。例如在
if ($this->dbcharset) {@mysql_query("SET NAMES ".$this->dbcharset);}后面执行
mysql_query("SET @@sql_mode = ''");注意确定你使用的是MySQL5
mysqli方式类似,就是执行的是
mysqli_query($this->connection_id, "SET @@sql_mode = ''");
到此这篇关于MySQL模式 Strict Mode知识点详解的文章就介绍到这了,更多相关MySQL模式 Strict Mode内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!
字段
支持
代码
模式
数据
数据库
文章
有效
上边
就是
版本
结构
知识
知识点
内容
字符
字符串
数值
方式
日期
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
科技企业和互联网企业
互联网为科技
互联网科技战争
科技类互联网
高科技与互联网
平安科技 互联网
科技伦理 互联网公司
博兴的互联网电子科技公司
西藏七维空间互联网科技有限公司
佳云科技和互联网广告
成都互联网科技公司工作好不好
搜狐科技互联网
深圳艾果互联网通讯科技
山东有哪些互联网科技公司
众安科技工业互联网合作
互联网科技数字货币
吉林省码上互联网科技电话
科技互联网经济论坛
广州三三互联网科技有限公司
互联网大会出现的黑科技
关于新基建和互联网科技
上海挚品互联网科技
科技创新互联网企业
互联网教育科技公司vipkid
宁夏众和广鑫互联网科技有限公司
互联网还是高科技吗
滨湖区互联网智能科技产品有哪些
黑云互联网科技有限公司
互联网风格科技公司名称
山东蛋芒互联网科技有限公司