字段“用户数据” CI 2.0.3 中没有默认值
我使用 CI 的用户指南来创建我的会话表。
CREATE TABLE IF NOT EXISTS `sessions` (
session_id varchar(40) DEFAULT '0' NOT NULL,
ip_address varchar(16) DEFAULT '0' NOT NULL,
user_agent varchar(120) NOT NULL,
last_activity int(10) unsigned DEFAULT 0 NOT NULL,
user_data text NOT NULL,
PRIMARY KEY (session_id),
KEY `last_activity_idx` (`last_activity`)
);
每当我的database.php中有$db['default']['stricton'] = TRUE
时就会出现此错误
错误号:1364
字段“user_data”没有默认值
插入
会话
(session_id
、ip_address
、user_agent
、last_activity
) VALUES ('2b92823888c4c5eb4b5b2ae25282ce9e', '192.168.1.4', 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.1 (KHTML,如 Gecko)Chrome/14.0.835.186 Safari/535.1', 1317346730)文件名:libraries/Session.php
行号:327
但是,我想强制执行严格的 SQL。
I used CI's user guide to create my session table.
CREATE TABLE IF NOT EXISTS `sessions` (
session_id varchar(40) DEFAULT '0' NOT NULL,
ip_address varchar(16) DEFAULT '0' NOT NULL,
user_agent varchar(120) NOT NULL,
last_activity int(10) unsigned DEFAULT 0 NOT NULL,
user_data text NOT NULL,
PRIMARY KEY (session_id),
KEY `last_activity_idx` (`last_activity`)
);
This error shows whenever I have $db['default']['stricton'] = TRUE
in my database.php
Error Number: 1364
Field 'user_data' doesn't have a default value
INSERT INTO
sessions
(session_id
,ip_address
,user_agent
,last_activity
) VALUES ('2b92823888c4c5eb4b5b2ae25282ce9e',
'192.168.1.4', 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.1
(KHTML, like Gecko) Chrome/14.0.835.186 Safari/535.1', 1317346730)Filename: libraries/Session.php
Line Number: 327
However, I want to enforce strict SQL.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
根据参考 - BLOB 和 TEXT 列不能有 DEFAULT 值。
BLOB 和 TEXT 类型
您应该添加
user_data< INSERT 语句中的 /code> 字段。
From the reference - BLOB and TEXT columns cannot have DEFAULT values.
The BLOB and TEXT Types
You should add
user_data
field in your INSERT statement.