SQLinfo.ru - Все о MySQL

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 28.01.2012 08:51:19

igrok
Участник
Зарегистрирован: 28.01.2012
Сообщений: 9

Запосы в phpmyadmin и из php обрабатываются по-разному

В интернете во многих местах можно найти запрос для упорядоченной нумерации таблицы по указанному полю:

update tablica set pole=(select @a:= @a + 1 from (select @a:= 0) s) order by pole;

Поле таблицы должно быть пронумеровано так:

pole
1
2
3
4

В тексте запроса ошибки нет. Запрос мной проверен. 3 года, как запущен из php на одном из сайтов. Там всё ОК.
Но на сей раз (на новом сайте) в аналогичной ситуации запрос нумерует по-другому:

pole
0
1
2
3
4

(хотя запрос типа UPDATE , однако отчего-то в таблице добавляется новая запись, в этой записи pole=0, и нумерация стартует с 0, а не с 1)
То есть, если запрос повторить, то таблица станет такой:

pole
0
1
2
3
4
5

??? Странно.
Этот же запрос, запускаемый на этом сайте из NAVICAT, ну или из phpmyadmin работает корректно.

Может, кто-нибудь знает в чём дело и как поправить?

Отредактированно igrok (28.01.2012 09:26:28)

Неактивен

 

#2 28.01.2012 10:09:34

vasya
Архат
MySQL Authorized Developer
Откуда: Орел
Зарегистрирован: 07.03.2007
Сообщений: 5840

Re: Запосы в phpmyadmin и из php обрабатываются по-разному

Сделайте проверочный скрипт на тестовую таблицу, который включает в себя только один этот запрос.

Неактивен

 

#3 28.01.2012 17:51:14

igrok
Участник
Зарегистрирован: 28.01.2012
Сообщений: 9

Re: Запосы в phpmyadmin и из php обрабатываются по-разному

Мне стыдно признаться, но я не знаю как сделать "проверочный скрипт на тестовую таблицу".

Я даже сделал поиск по форуму по ключевым словам "проверочный скрипт", но ничего не нашёл
Объясните, пожалуйста, чайнику куда зайти, на что нажать...

(в моих руках инструменты: Phpmyadmin (от хостера), Navicat for MySQL  и доступ со стороны сайта на php)

Неактивен

 

#4 28.01.2012 19:20:13

vasya
Архат
MySQL Authorized Developer
Откуда: Орел
Зарегистрирован: 07.03.2007
Сообщений: 5840

Re: Запосы в phpmyadmin и из php обрабатываются по-разному

Ваш php скрипт на новом сайте, который имеет проблему с вышеприведенным запросом, кроме этого запроса содержит ещё кучу других. И добавляет лишнюю запись с нулем какой-то другой запрос.

Чтобы вы могли наглядно убедиться, что дело не в php, я предложил вам сделать php скрипт, который бы включал в себя только одну команду (приведенный вами update). Тестовая таблица - это чтобы не нарушать согласованную работу базы, создать отдельную таблицу над которой и проводить опыты.

Неактивен

 

#5 06.02.2012 10:33:48

igrok
Участник
Зарегистрирован: 28.01.2012
Сообщений: 9

Re: Запосы в phpmyadmin и из php обрабатываются по-разному

Спасибо, поискал собственные ошибки. Всё нашёл

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson