![]() |
|
Модераторы: skyboy |
![]()
|
|
| skhilkov |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 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)? А чтобы заработало очень надо, потому как есть довольно большой код, который неохота переписывать/переотлаживать.... Хелп плиз... -------------------- Кто понял жизнь, тот не спешит. |
|||
|
||||
| skyboy |
|
|||
|
неОпытный ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9820 Регистрация: 18.5.2006 Где: Днепропетровск Репутация: 41 Всего: 260 |
все-таки, быстрее будет скорректировать исходник.
обычно такая проблема, когда в поле auto_increment вставляют "" - пустую строку. |
|||
|
||||
| skhilkov |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 371 Регистрация: 11.4.2006 Где: TOMSK Репутация: нет Всего: 7 |
в том то и дело что поле не автоинкрементно.... обычное поле типа integer.
-------------------- Кто понял жизнь, тот не спешит. |
|||
|
||||
| skyboy |
|
|||
|
неОпытный ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9820 Регистрация: 18.5.2006 Где: Днепропетровск Репутация: 41 Всего: 260 |
skhilkov, да, туплю.
так что, зачем записываешь пустую строку? вместо пустой строки записывай NULL |
|||
|
||||
| skhilkov |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 371 Регистрация: 11.4.2006 Где: TOMSK Репутация: нет Всего: 7 |
skyboy,
Да просто формирую запрос для записи значений в таблицу. Причем у меня есть XML сформированный как <имя_поля>значение</имя поля>. Поэтому я просто прохожу по значениям, если пусто - пишу ''. Тип поля мне неизвестен. Попробую сделать с NULL вместо ''. -------------------- Кто понял жизнь, тот не спешит. |
|||
|
||||
| skhilkov |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 371 Регистрация: 11.4.2006 Где: TOMSK Репутация: нет Всего: 7 |
В общем после долгих танцев с бубном все-таки вопрос решился.
Решение с заменой '' на null не подходило по той причине, что в случае с пустыми кавычками вставлялось значение для столбца по умолчанию, а в случае с NULL - соответственно NULL. А дело все оказалось в том что драйвер JDBC для MySQL сам при соединении устанавливает нужный ЕМУ sql-mode!! В mysql-browser запрос прошел на ура! Может кому-нибудь понадобиться когда-нить ) -------------------- Кто понял жизнь, тот не спешит. |
|||
|
||||
![]()
|
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | MySQL | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |