Массовое переименование таблиц базы данных MySQL
Полезный скрипт на php:
< ?php $db_server = "localhost"; // hostname MySQL server $db_username = "username"; // username MySQL server $db_password = "password"; // password MySQL server $db_name = "database"; // database name $pattern = "pattern_"; // search string $new_pattern = "new_pattern_"; // replacement string, // can be empty // login to MySQL server $link = mysql_connect( $db_server, $db_username, $db_password); if (!$link) { die('Could not connect: ' . mysql_error()); } // list all tables in the database containing the search pattern $sql = "SHOW TABLES FROM `" . $db_name . "`"; $sql .= " LIKE '%" . $pattern . "%'"; $result = mysql_query ( $sql, $link ); if (!$result) { die("Invalid query: " . mysql_error( $link )); } $renamed = 0; $failed = 0; while ( $row = mysql_fetch_array ($result) ) { // rename every table by replacing the search pattern // with a new pattern $table_name = $row[0]; $new_table_name = str_replace ( $pattern, $new_pattern, $table_name); $sql = "RENAME TABLE `" . $db_name . "`.`" . $table_name . "`"; $sql .= " TO `" . $db_name . "`.`" . $new_table_name . "`"; $result_rename = mysql_query ( $sql, $link ); if ($result_rename) { echo "Table `" . $table_name . "` renamed to :`"; echo $new_table_name . "`.\n"; $renamed++; } else { // notify when the renaming failed and show reason why echo "Renaming of table `" . $table_name . "` has failed: "; echo mysql_error( $link ) . "\n"; $failed++; } } echo $renamed . " tables were renamed, " . $failed . " failed.\n"; // close connection to MySQL server mysql_close( $link ); ?>
Нашел здесь.
Распечатать
Другие записи:
- MySQL: сделаем это по-быстрому
- Осторожно БОЯН! Сброс root пароля MySQL :)
- Оптимизация настроек MySQL
- Сброс пароля WordPress в MySQL
- Поднимаем TorrentFlux на Ubuntu Server
- Баг: двойные ссылки навигации по страницам в WordPress 2.8
- Поднимаем Openfire на Debian 5
- Полный, доработанный перевод Search Unleashed 0.2.29
- Конвертируем IPB 2.3.x в phpBB 3.0.5
- Баг: не работает Search Unleashed 1.0.2

Hey, everything above can be done just by SQL
post code sample here
Комментарии кода доставляют, особенно «can be empty» ))
да, не обратил внимания