ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2
Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей. Здесь обсуждаются безопасность, программирование, технологии и многое другое. Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
Вернуться   Форум АНТИЧАТ > Программирование > PHP, PERL, MySQL, JavaScript
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

автоинкремент в mysql
  #1  
Старый 17.09.2008, 17:31
Дикс
Познавший АНТИЧАТ
Регистрация: 16.04.2006
Сообщений: 1,488
Провел на форуме:
2209675

Репутация: 537


Отправить сообщение для Дикс с помощью ICQ
По умолчанию автоинкремент в mysql

Терзают меня смутные сомнения, что я об этом уже спрашивал - но никак не могу найти тему.
В общем такие дела:
из скрипта выполняю запрос - INSERT INTO *** VALUES ( '', 'test', 'test' и т.д.
Первый столбец - id int(10) auto_increment NOT NULL

В основном всегда айдишник вставляется автоматически. Но давным давно у меня было так, что он ругался - "не задано значения для столбца id". И в ГУЙне для mysql5 при вставке бывает частенько такая ошибка - но при этом запись создаётся.

У меня тогда решилось тем, что я изменил какую-то опцию в my.cnf. Вроде это была какая-то новая фича от разработчиков, которую надо было отключить..

Щас вот убей, не могу вспомнить че за режим я там переключал - может кто подскажет?
 
Ответить с цитированием

  #2  
Старый 17.09.2008, 17:58
Ponchik
Постоянный
Регистрация: 30.08.2005
Сообщений: 730
Провел на форуме:
6828219

Репутация: 2274


По умолчанию

INSERT INTO *** VALUES (NULL, 'test', 'test' и т.д.
И поле ID должно быть NOT NULL
Илиже при insert'e указывай все поля кроме id

Это я так... На будующее... А с режимом - хз
 
Ответить с цитированием

  #3  
Старый 17.09.2008, 18:03
Дикс
Познавший АНТИЧАТ
Регистрация: 16.04.2006
Сообщений: 1,488
Провел на форуме:
2209675

Репутация: 537


Отправить сообщение для Дикс с помощью ICQ
По умолчанию

во, нашёл:
http://www.hcube.ru/support/faq/287/index.php?ELEMENT_ID=3109

PHP код:
Out of range value adjusted for column 'USER_ID' или Incorrect integer value'' for column 'SESS_SESSION_ID'
Out of range value adjusted for column 'USER_ID' или Incorrect integer value'' for column 'SESS_SESSION_ID'
При работе системы получаем сообщение об ошибке MySQL

    
MySQL Query ErrorINSERT INTO b_stat_session(GUEST_IDNEW_GUESTUSER_IDUSER_AUTH, ...) VALUES ('1''N''''N', ...) 
[
Out of range value adjusted for column 'USER_ID' at row 1


    
MySQL Query ErrorINSERT INTO b_stat_session_data(DATE_FIRSTDATE_LASTGUEST_MD5SESS_SESSION_IDSESSION_DATAVALUES (now(),now(), 
  
'76d5f8d2a62a729069c568492da19fdf','',SESS_REQUEST_UR_GRABBER_STOP_TIME";a:1:{i:0;i:121;}s:27:"ACTIVITY_EXCEEDING_NOTIFIED";N;}') 
[Incorrect integer value: '' for column 'SESS_SESSION_ID' at row 1] 

Ответ 

Скорее всего, у вас установлен MySQL версии 5.x 
Вам необходимо из значения для переменной sql-mode убрать STRICT_TRANS_TABLES. 

1 вариант: изменение конфигурации сервера через my.cnf. Например, 
    sql-mode="
NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
вместо 
    sql-mode="
STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

2 вариант: если у Вас нет доступа к конфигурационным файлам MySQL-сервера, попробуйте в /bitrix/php_interface/after_connect.php добавить строку: 
   
$DB->Query("set sql_mode=''") 

Подробнее на официальном сайте: 
http://dev.mysql.com/doc/refman/5.0/en/server-sql-mode.html 
 
Ответить с цитированием

  #4  
Старый 17.09.2008, 18:05
Дикс
Познавший АНТИЧАТ
Регистрация: 16.04.2006
Сообщений: 1,488
Провел на форуме:
2209675

Репутация: 537


Отправить сообщение для Дикс с помощью ICQ
По умолчанию

да, с null у меня всё в порядке было.
значит у проблемы три решения:
1. исправить конфиг (самое нежелательное)
2. выполнить "set sql_mode=''"
3. использовать null (предпочтительное)
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Эффективные Слепые Иньекции Евгений Минаев Авторские статьи 10 31.05.2008 09:43
Общие Рекомендации Защиты (MySQL и SQL Web-интерфейс) k00p3r Чужие Статьи 0 13.06.2005 11:22
Защищаем MySql. Шаг за шагом k00p3r Чужие Статьи 0 13.06.2005 11:18
SQL инъекция в сервере MySQL k00p3r Чужие Статьи 0 12.06.2005 12:41



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ