Переименование таблицы mysql
Необходимость в переименовании таблиц возникает при первоначальном ошибочном выборе их названий или по ряду других причин, в результате которых совсем не обязательно удалять таблицу с имеющимися уже данными. Гораздо проще переименовать таблицу, задав ей необходимое имя при помощи одной из команд MySQL.
Рассмотрим простую возможность переименования таблиц в MySQL.
Для переименования таблиц, в MySQL существует команда RENAME TABLE , синтаксис которой имеет вид:
RENAME TABLE старое_имя_таблицы TO новое_имя_таблицы;
Таким образом, к примеру, для переименования таблицы с прежним именем accounts в таблицу с именем users, выполним следующую команду:
RENAME TABLE accounts TO users;
Остались вопросы?
Если у Вас что-то не получилось или остались вопросы по данной проблеме — обратитесь к автору и он Вам поможет.
Станьте одним из экспертов!
Мы будем рады видеть в своих рядах людей, которые могут поделиться своим опытом с другими!
Linux (Ubuntu,Debian,Fedora), MS Windows (Server/Desktop), PHP.
Решение IT-проблем любой сложности.
Как переименовать таблицу в mysql
MS SQL Server
В СУБД MS SQL для переименования объектов текущей базы данных (таблицы, индекса, столбца) используется оператор sp_rename. Для изменения имени таблицы используется следующий синтаксис оператора sp_rename:
sp_rename ‘old_table_name’, ‘new_table_name’
MySQL Server
СУБД MySQL для переименования таблиц используется оператор ALTER TABLE. Синтаксис оператора в данном случае имеет вид:
Переименовать таблицу tbl_product в tbl_prod
MS SQL:
sp_rename ‘tbl_product’, ‘tbl_prod’;
MySQL:
ALTER TABLE tbl_product RENAME bl_prod;
Как переименовать таблицу в phpMyAdmin и MySQL
Откройте базу данных, а затем перейдите в таблицу, которую вы хотите переименовать.
Когда таблица будет открыта, выберите пункт меню «Операции».
Найдите раздел «Переместить таблицу в (таблицу базы данных)». Да, для переименования используется та же функция, что и для перемещения таблицу в другую базу данных.
Введите новое имя таблицы и нажмите кнопку «Вперёд».
Теперь таблица получила новое имя.
Как переименовать таблицу в MySQL
Для подключения к MySQL или MariaDB СУБД на localhost без пароля используйте команду:
mysql -u root
Для подключения к MySQL или MariaDB СУБД на localhost с паролем используйте команду:
mysql -u root -p
Обратите внимание, что после опции -p не нужно указывать пароль — пароль нужно будет ввести в приглашение командной строки.
Если вы подключаетесь к удалённому серверу, то вы также можете использовать опцию -h (или —host=name) с указанием имени или IP адреса хоста.
После подключения к MySQL / MariaDB вы можете использовать следующую команду:
RENAME TABLE `БАЗА ДАННЫХ`.`ТАБЛИЦА` TO `БАЗА ДАННЫХ`.`НОВОЕ ИМЯ`;
Вы также можете выбрать базу данных для использования и не указывать имя базы данных рядом с именем таблицы:
USE `БАЗА ДАННЫХ`; RENAME TABLE `ТАБЛИЦА` TO `НОВОЕ ИМЯ`;
Пример переименования таблицы в MySQL:
RENAME TABLE `test`.`OLD NAME` TO `test`.`NEW NAME`;
Пример переименования таблицы в MySQL с предварительным выбором базы данных:
USE `test`; RENAME TABLE `OLD NAME` TO `NEW NAME`;
Чтобы вывести список таблиц, используйте следующий SQL запрос:
Как переименовать таблицу в mysql
Операция переименования должна осуществляться как атомарная, т.е. при выполнении переименования никакому другому потоку не разрешается доступ к указанным таблицам. Благодаря этому возможно замещение таблицы пустой таблицей:
CREATE TABLE new_table (. ); RENAME TABLE old_table TO backup_table, new_table TO old_table;
Переименование производится слева направо. Таким образом, для обмена именами между двумя таблицами необходимо выполнить следующие действия:
RENAME TABLE old_table TO backup_table, new_table TO old_table, backup_table TO new_table;
Для двух баз данных, находящихся на одном и том же диске, можно также осуществлять обмен именами:
RENAME TABLE current_db.tbl_name TO other_db.tbl_name;
При выполнении команды RENAME не должны иметь место заблокированные таблицы или активные транзакции. Необходимо также иметь привилегии ALTER и DROP для исходной таблицы и привилегии CREATE и INSERT — для новой.
Если MySQL сталкивается с какой-либо ошибкой при переименовании нескольких таблиц, то произойдет обратное переименование для всех переименованных таблиц, чтобы вернуть все в исходное состояние.
Оператор RENAME TABLE был добавлен в MySQL 3.23.23.