Модераторы: skyboy
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> incorrect integer value '' for column... не могу разобраться с sql-mode 
V
    Опции темы
skhilkov
Дата 11.11.2008, 07:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 371
Регистрация: 11.4.2006
Где: TOMSK

Репутация: нет
Всего: 7



В общем ситуация такая: возникает вышеуказанная ошибка после того как начали переводить базу с 4 на 5-й MySQL. 
Много гуглил. Везде решением является коммент такой вот строчки - #sql-mode="STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION" в файле my.cnf
Так вот - у меня нет такой строки.... Попробовал поставить sql-mode="", не помогло....
Может дло в том что MySQL был обновлен с 4 до 5 из репозитария(Ubuntu Hardy)?
А чтобы заработало очень надо, потому как есть довольно большой код, который неохота переписывать/переотлаживать....
Хелп плиз...



--------------------
Кто понял жизнь, тот не спешит. 
PM MAIL   Вверх
skyboy
Дата 11.11.2008, 10:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


неОпытный
****


Профиль
Группа: Модератор
Сообщений: 9820
Регистрация: 18.5.2006
Где: Днепропетровск

Репутация: 41
Всего: 260



все-таки, быстрее будет скорректировать исходник.
обычно такая проблема, когда в поле auto_increment вставляют "" - пустую строку.
PM MAIL   Вверх
skhilkov
Дата 12.11.2008, 06:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 371
Регистрация: 11.4.2006
Где: TOMSK

Репутация: нет
Всего: 7



в том то и дело что поле не автоинкрементно....  обычное поле типа integer.


--------------------
Кто понял жизнь, тот не спешит. 
PM MAIL   Вверх
skyboy
Дата 12.11.2008, 10:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


неОпытный
****


Профиль
Группа: Модератор
Сообщений: 9820
Регистрация: 18.5.2006
Где: Днепропетровск

Репутация: 41
Всего: 260



skhilkov, да, туплю.
так что, зачем записываешь пустую строку? вместо пустой строки записывай NULL
PM MAIL   Вверх
skhilkov
Дата 12.11.2008, 12:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 371
Регистрация: 11.4.2006
Где: TOMSK

Репутация: нет
Всего: 7



skyboy, 
Да просто формирую запрос для записи значений в таблицу. Причем у меня есть XML сформированный как <имя_поля>значение</имя поля>.
Поэтому я просто прохожу по значениям,  если пусто - пишу ''. Тип поля мне неизвестен. Попробую сделать с NULL вместо ''.


--------------------
Кто понял жизнь, тот не спешит. 
PM MAIL   Вверх
skhilkov
Дата 17.11.2008, 07:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 371
Регистрация: 11.4.2006
Где: TOMSK

Репутация: нет
Всего: 7



В общем после долгих танцев с бубном все-таки вопрос решился.
Решение с заменой '' на null не подходило по той причине, что в случае с пустыми кавычками вставлялось значение для столбца по умолчанию, а в случае с NULL - соответственно NULL. 
А дело все оказалось в том что драйвер JDBC для MySQL сам при соединении устанавливает нужный ЕМУ sql-mode!!
В mysql-browser запрос прошел на ура!
Может кому-нибудь понадобиться когда-нить )


--------------------
Кто понял жизнь, тот не спешит. 
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | MySQL | Следующая тема »


 




[ Время генерации скрипта: 0.1525 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.