Задать вопрос
@mix_gorbachev

Нестрогая типизация Incorrect integer value: '' for column, как исправить?

Возникает ошибка такого рода Incorrect integer value: '' for column 'Tekstura' at row 1.
У меня в поле типа int ставится пустое значение. На одном сервере, значение срабатывало и ставило пустое значение, а точнее 0.
Понимаю, что нужно установить режим нестрогой типизации не могу понять какой именно.
И можно ли это сделать просто запросом?
Использую MySQL 5.6
INSERT INTO `Plitka_Tovar`(
	`Fabrika`, `Kollekciya`, `Nazvanie`, 
	`Material`, `Poverhnosty`, `Tekstura`, 
	`Tip`, `Vid_izdeliya`, `Kratnosty`, 
	`S_Facetom(Kabanchik)`, `Tehnicheskiy_keramogranit`, 
	`Tonkiy_keramogranit`, `title`, 
	`keywords`, `description`, `divh1`, 
	`tags`, `size1`, `size2`, `size3`, 
	`f_sht`, `f_m2`, `f_kg`, `f_kor`, 
	`f_kor_m2`, `sizeP1`, `sizeP2`, `sizeP3`, 
	`img`
) 
VALUES 
	(
		'68', '227', 'Rect Line Amethyst', 
		'1', '1', '', '2', '2', 'м2', 'Нет', 
		'', '', '', '', '', '', 'Colorker, Vivenza, Керамическая плитка, Глянцевая, глазурованная, Пэтчворк, Восточный, Для стен, Ванная, Плитка для ванной комнаты, Прямоугольная, Декор', 
		'29.5', '89.3', '1', '3', '0.78', '14.8', 
		'75', '58.50', '', '', '', '../img/Plitka_Tovar/55ffae561e167.jpg'
	)
  • Вопрос задан
  • 3044 просмотра
Подписаться 1 Оценить Комментировать
Помогут разобраться в теме Все курсы
  • Skillfactory
    Профессия Тестировщик на Python
    9 месяцев
    Далее
  • Академия Eduson
    Python-разработчик
    9 месяцев
    Далее
  • Merion Academy
    Базы данных с нуля
    2 месяца
    Далее
Решения вопроса 1
Melkij
@Melkij
DBA для вашего PostgreSQL?
Правильно: исправьте свой бекенд. Передавайте числа как числа.
Похуже: как указал Дмитрий Ким или более явно IF(:tekstura != '', :tekstura, 0)
Худший и что, собственно, отличает этот хост от другого, где этот запрос проходит нормально: изменить sql_mode https://dev.mysql.com/doc/refman/5.6/en/sql-mode.html
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
martin74ua
@martin74ua Куратор тега MySQL
Linux administrator
alter table tbl (tekstura int default 0);
как то так ;)
Ответ написан
kimono
@kimono
Web developer
SET `Tekstura` = IF(:tekstura, :tekstura, 0)
или
SET `Tekstura` = IF(:tekstura, :tekstura, NULL)
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы