Вопросы Разработчикам Скриптов с SQL, вопросы по скриптам (мелкие вопросы) |
Здравствуйте, гость ( Вход | Регистрация )
Вопросы Разработчикам Скриптов с SQL, вопросы по скриптам (мелкие вопросы) |
26.11.2011, 8:29
Сообщение
#101
|
|
Участник Группа: Пользователи Сообщений: 31 Регистрация: 15.6.2011 Из: г. Владивосток Пользователь №: 9 350 Спасибо сказали: 0 раз |
Как мне исправить эту ошибку:
Код LuaSQL: Error executing query. MySQL: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '1818235298447e+14 WHERE name = 'share'' at line 1 Вот строки кода, дающие эту ошибку: Код function SetdbStatShare(iShare) if not con then Condb() end sIn = "UPDATE stats SET value="..tonumber(iShare).." WHERE name = 'share';" assert(con:execute((sIn))) end Почему в редких случаях в базу отправляется "1818235298447e+14", а не просто число, как должно быть? ЗЫ: без преобразования tonumber() эта ошибка происходит всегда |
|
|
6.12.2011, 0:34
Сообщение
#102
|
|
Освоившийся участник Группа: Пользователи Сообщений: 391 Регистрация: 4.11.2009 Из: Дом Пользователь №: 4 923 Спасибо сказали: 239 раз |
Ошибка происходит потому, что это неизвестный для MySQL тип значения. Нужно смотреть тип колонки value в таблице stats. Он должен быть BIGINT, а запрос должен быть:
Код sIn = "UPDATE `stats` SET `value` = '"..iShare.."' WHERE `name` = 'share';"
|
|
|
Похожие темы
|
Сейчас: 4.12.2024, 16:15 |