Поле 'user_data' не имеет значения по умолчанию в CI 2.0.3 - PullRequest
6 голосов
/ 30 сентября 2011

Я использовал руководство пользователя 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`)
);

Эта ошибка отображается всякий раз, когда у меня есть $db['default']['stricton'] = TRUE в моей базе данных. Php

Номер ошибки: 1364

Поле 'user_data' не имеет значения по умолчанию

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, как Gecko) Chrome / 14.0.835.186 Safari / 535.1 ', 1317346730)

Имя файла: библиотеки / Session.php

Номер строки: 327

Однако я хочу применить строгий SQL.

1 Ответ

3 голосов
/ 30 сентября 2011

Из ссылки - В столбцах BLOB и TEXT не может быть значений DEFAULT .

Типы BLOB и TEXT

Вы должны добавить user_data поле в вашем операторе INSERT.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...