Как переименовать таблицу в 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 : SQL : Изменение свойств таблицы : Изменение свойств столбца (ALTER TABLE CHANGE)
Изменить свойства одного или нескольких столбцов можно при помощи следующей конструкции:
ALTER TABLE table_name CHANGE field_name_old field_name_new parametrs
table_name — имя таблицы, в которой находится изменяемый столбец; field_name_old — имя столбца изменяемого столбца; field_name_new — новое имя изменяемого столбца (должно равняться field_name_old, если мы не хотим поменять имя столбца); parametrs — новые параметры столбца.
В следующем примере установим тип строки field_1 как текст:
$sql="ALTER TABLE my_table CHANGE field_1 field_1 TEXT"; mysql_query($sql);
А если необходимо при этом еще и переименовать столбец в field_2, то получиться так:
$sql="ALTER TABLE my_table CHANGE field_1 field_2 TEXT"; mysql_query($sql);
В случае, если надо изменить свойства сразу нескольких столбцов, то конструкцию CHANGE field_name_old field_name_new parametrs повторяем через запятую для каждого столбца:
$sql="ALTER TABLE my_table CHANGE field_1 field_2 TEXT, CHANGE field_3 field_3 TEXT"; mysql_query($sql);
Переименование таблицы pymysql
pymysql.err.ProgrammingError: (1064, «You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near »asd’ RENAME TO ‘primer» at line 1″)
Отслеживать
задан 29 дек 2017 в 21:29
6,343 5 5 золотых знаков 25 25 серебряных знаков 54 54 бронзовых знака
Кавычки кривые.
29 дек 2017 в 21:37
@Akina не совсем понял что вы имеете ввиду
29 дек 2017 в 21:38
Вместо того, чтобы экономить, сперва соберите запрос в переменной, а потом эту переменную отдавайте в cur.execute. А в серединке — выведите текст запроса и посмотрите, что не так. Должно получиться RENAME TABLE asd TO primer или RENAME TABLE `asd` TO `primer`
29 дек 2017 в 21:41
@Akina не мне нужно чтобы вместо значений asd и primer в последующем были значения которые вводит пользователь. Так как вы показали у меня получилось реализовать
29 дек 2017 в 21:47
1 ответ 1
Сортировка: Сброс на вариант по умолчанию
Нашел на просторах английского stackoverflow ответ ответ оказался достаточно банален
one = input('Введите название таблицы которой нужно поменять название\n') two = input('На какой название хотите поменять?\n') cur.execute("RENAME TABLE %s TO %s" % (one, two))
one = input('Введите название таблицы которой нужно поменять название\n') two = input('На какой название хотите поменять?\n') s = "ALTER TABLE %s RENAME TO %s" cur.execute(s % (one, two))
Как переименовать таблицу в MySQL?
Процесс развития проекта в некоторых случает требует модификации имен некоторых таблиц, иногда и самих баз данных. Эта заметка о том, как можно посредством консоли MySQL переименовать таблицу в базе данных. Для этих задач в синтаксисе MySQL предусмотрена команда RENAME TABLE. Давайте для наглядного примера использования рассмотрим простую задачу. Предположим, что у нас есть база данных, которая называется project_db, одна из таблиц в базе данных называется t_goods. Необходимо переименовать таблицу t_goods в t_prod.
И самое первое что нужно сделать, это убедиться, что учётная запись, под которой вы работаете позволяет переименовывать таблицы. Бывает, что прав не хватает, и здесь уже следует позаботиться о наличии прав для выполнения данных манипуляций в базе данных.
Для начала рассмотрим синтаксис команды RENAME TABLE, он прост для понимания:
RENAME TABLE старое_название_таблицы TO новое_название_таблицы;
Способ первый
Однако перед его использованием, нам следует указать базу данных, с которой мы хотим работать в консоли MySQL, делается это посредством команды USE.
Указываем базу данных:
USE project_db;
После этого можно убедиться, что вы используете нужную базу данных, элементарным образом просмотрев список таблиц в текущей базе данных.
Список таблиц в базе данных
SHOW TABLES;
После выполнения команды должен появиться весь список таблиц, которые содержит база project_db. Визуально убеждаемся, что нужная нам таблица в списке, затем переименовываем её уже известной нам командой.
Переименование таблицы
RENAME TABLE t_goods TO t_prod;
После выполнения команды можно убедиться, что операция прошла успешно, просмотрев список посредством команды SHOW TABLES, о которой уже говорилось выше.
Ну вот, пожалуй, и всё, таблицы таким могут переименованы в угодные вам названия, без потери данных. Кстати хотелось отметить команду SHOW, на самом деле она довольно универсальная и может быть использована не только для просмотра списка таблиц. Так к примеру, можно просмотреть список баз данных, посредством похожей команды.
Просмотр списка баз данных
SHOW DATABASES;
После выполнения команды, в окне консоли будет показан список всех баз данных на сервере MySQL. Это так же бывает полезно при администрировании сервера.
Способ второй, для MySQL 5.5 (InnoDB)
Первый способ предусматривал предварительное использование команды USE database. Однако, в работе не всегда бывает удобно использовать данный способ, т.к. следует вводить последовательность комманд.
В MySQL версии 5.5 и выше если у вас используется в качестве базы данных InnoDB, то переименование таблицы, а также её перемещение между базами данных выполняется довольно просто.
Переименование таблицы
RENAME TABLE project_db.t_goods TO project_db.t_prod;
Таким образом, в команде RENAME TABLE до точки указывается название базы данных, а после точки – имя таблицы. Аналогичным образом можно перемещать таблицы в другую базу данных, с возможностью переименования.
Перемещение таблицы в другую базу данных
RENAME TABLE project_db.t_goods TO catalog_db.t_prod;
Команда переместить таблицу t_goods из базы project_db в базу catalog_db с новым именем t_prod. Согласитесь, в работе может быть это так же удобно. Все данные таблицы при этом остаются в сохранности.
