Андрей
Высший разум
(466098)
1 месяц назад
Ну так создай в базе хранимую процедуру, содержащую группу команд. И вызывай её одной командой.
Но тот код, который ты привёл, вызывает вопросы.
Во первых, если ты УДАЛИЛ таблицу, то каким образом ты хочешь делать UPDATE и ALTER TABLE несуществующей таблицы?
Во вторых, НЕ НАДО перенумеровывать первичный ключ. НИКОГДА не надо. Первичный ключ (даже автоинкрементный) - НЕ способ нумерации, а способ назначить каждой записи таблицы УНИКАЛЬНЫЙ идентификатор. И если первичный ключ уже был использован в таблице, он НЕ ДОЛЖЕН назначаться другим записям.
P.S. Идея использовать первичный ключ для последовательной нумерации приходит в голову очень многом новичкам, не понимающим, что первичные ключи - механизм организации связей между таблицами и перенумерация первичных ключей разрушает эти связи, а повторное использование ранее удалённых первичных ключей приводит к непредсказуемым последствиям.
$sql = 'DROP TABLE fr7910hy_users.Users';
if (mysql_query($sql, $link)) {
echo "Database my_db was successfully dropped\n";
} else {
echo 'Error dropping database: ' . mysql_error() . "\n";
}
?>
Тепереь мне надо выполнить mysql команду такого типа
SET @num :=0;
UPDATE Users SET id = @num := (@num+1);
ALTER TABLE Users AUTO_INCREMENT =1;
Пробую так как указано в документации по множетсвенный запросам не выходит что то
$sql = "SET @num :=0;
UPDATE fr7910hy.Users SET id = @num := (@num+1);
ALTER TABLE fr7910hy.Users AUTO_INCREMENT =1;"
пробую так через phpMyadmin там это код выполняется через php каак то видимо правильно оформить надо строку но не знаю как