MYSQL Тип int и значение ''

Статус
В этой теме нельзя размещать новые ответы.

yurik010203

Создатель
Регистрация
30 Сен 2008
Сообщения
23
Реакции
0
Перестал работать
insert into tabl1 (intfild) values ('')
ругается 1264 - Out of range value adjusted for column .....
где intfild int(2) default NULL

как заставить продолжать '' понимать как "0"
Не могу понять что зацепил, вчера работало - сегодня нет.
 
Код таблицы в студию.
 
int - числовой тип, а не символьный.
Используй вместо '' 0 или null.
 
int - числовой тип, а не символьный.
Используй вместо '' 0 или null.

Это я понимаю, но запросы выполняются из скрипта, не мной писанного. Это нужно разобраться и перелопатить весь код :( и потом шерстить еще прийдется.

Хотелось вернуть вчерашнее состояние, когда все работало. Интересно знать в каком направлении копать.
Все это хозяйство стоит на тестовой локальной машинке в конфгурации Apache/2.2.6,PHP/5.2.4,MySQL/5.0.27 после экспериментов с PHP ап до PHP/5.2.7 перестало работать :nezn: откат не помогает. В php.ini добавил только отладчик для PhpEd. Я вычитал что повысили контроль за типами в MySQL 5.х как это обойти ??????

Добавлено через 11 минут
Код таблицы в студию.

CREATE TABLE `products` (
`products_id` int(11) NOT NULL auto_increment,
. . . . . .
`manufacturers_id` int(11) default NULL,
. . . . . .
`products_page_url` varchar(255) default NULL,
PRIMARY KEY (`products_id`),
KEY `idx_products_date_added` (`products_date_added`)
) ENGINE=MyISAM AUTO_INCREMENT=104 DEFAULT CHARSET=utf8;

кусочек с проблемным manufacturers_id, таблицы я не менял, проблема не здесь.
 
Отключи STRICT_TRANS_TABLES и STRICT_ALL_TABLES.

Если сам то в my.cnf строку:

sql-mode="STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"

замени на:

sql-mode=""

или попроси саппорт.
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху