Как переименовать таблицу в mysql
Перейти к содержимому

Как переименовать таблицу в mysql

  • автор:

Как переименовать таблицу в MySQL?

Как переименовать таблицу в mysql?

Для переименования таблицы нужно использовать phpmyadmin?

короткая ссылка на этот вопрос: close
спросил 8 лет назад

2 ответа

Чтобы переименовать таблицу mysql, нужно выполнить mysql запрос с командой RENAME:

Не важно, используете ли вы phpmyadmin или нет. Phpmyadmin внутри себя вызовет тот же самый sql-запрос.

Пример переименования таблицы в mysql:

RENAME TABLE начальное_имя новое_имя

Если имя таблицы совпадает со служебными выражениями mysql, то имя нужно обернуть в апострофы:

RENAME TABLE `имя_таблицы` `новое_имя`

root@localhost > rename table control to checking; Query OK, 0 rows affected (0.06 sec)

Как переименовать таблицу в mysql

Если таблица уже была ранее создана, и ее необходимо изменить, то для этого применяется команда ALTER TABLE . Ее сокращенный формальный синтаксис:

ALTER TABLE название_таблицы

Вообще данная команда поддерживает гораздо больше опций и возможностей. Все их можно посмотреть в документации. Рассмотрим лишь основные сценарии, с которыми мы можем столкнуться.

Добавление нового столбца

Добавим в таблицу Customers новый столбец Address:

ALTER TABLE Customers ADD Address VARCHAR(50) NULL;

В данном случае столбец Address имеет тип VARCHAR и для него определен атрибут NULL.

Удаление столбца

Удалим столбец Address из таблицы Customers:

ALTER TABLE Customers DROP COLUMN Address;

Изменение значения по умолчанию

Установим в таблице Customers для столбца Age значение по умолчанию 22:

ALTER TABLE Customers ALTER COLUMN Age SET DEFAULT 22;

Изменение типа столбца

Изменим в таблице Customers тип данных у столбца FirstName на CHAR(100) и установим для него атрибут NULL :

ALTER TABLE Customers MODIFY COLUMN FirstName CHAR(100) NULL;

Добавление и удаление внешнего ключа

Пусть изначально в базе данных будут добавлены две таблицы, никак не связанные:

CREATE TABLE Customers ( Id INT PRIMARY KEY AUTO_INCREMENT, Age INT, FirstName VARCHAR(20) NOT NULL, LastName VARCHAR(20) NOT NULL ); CREATE TABLE Orders ( Id INT PRIMARY KEY AUTO_INCREMENT, CustomerId INT, CreatedAt Date );

Добавим ограничение внешнего ключа к столбцу CustomerId таблицы Orders:

ALTER TABLE Orders ADD FOREIGN KEY(CustomerId) REFERENCES Customers(Id);

При добавлении ограничений мы можем указать для них имя, используя оператор CONSTRAINT , после которого указывается имя ограничения:

ALTER TABLE Orders ADD CONSTRAINT orders_customers_fk FOREIGN KEY(CustomerId) REFERENCES Customers(Id);

В данном случае ограничение внешнего ключа называется orders_customers_fk. Затем по этому имени мы можем удалить ограничение:

ALTER TABLE Orders DROP FOREIGN KEY orders_customers_fk;

Добавление и удаление первичного ключа

Добавим в таблицу Products первичный ключ:

CREATE TABLE Products ( Id INT, Model VARCHAR(20) ); ALTER TABLE Products ADD PRIMARY KEY (Id);

Теперь удалим первичный ключ:

ALTER TABLE Products DROP PRIMARY KEY;

MYSQL – ИЗМЕНИТЬ, УДАЛИТЬ, ПЕРЕИМЕНОВАТЬ, ИЗМЕНИТЬ

Со временем меняются и требования бизнеса. Поскольку бизнес-требования меняются, дизайн базы данных также нуждается в изменении.

MySQL обеспечивает ALTER функция, которая помогает нам включить изменения в уже существующую структуру базы данных.

Команда alter используется для изменения существующей базы данных, таблицы, представления или других объектов базы данных, которые, возможно, потребуется изменить в течение жизненного цикла базы данных.

Предположим, что мы завершили проектирование базы данных и она реализована. Пользователи наших баз данных используют ее, а затем понимают, что часть важной информации была упущена на этапе проектирования. Они не хотят терять существующие данные, а просто хотят включить новую информацию. Команда alter пригодится в таких ситуациях. Мы можем использовать команду alter, чтобы изменить тип данных поля, скажем, со строки на числовой, изменить имя поля на новое имя или даже добавить новый столбец в таблицу.

Изменить – синтаксис

Основной синтаксис, используемый для добавления столбца в уже существующую таблицу, показан ниже.

ALTER TABLE `table_name` ADD COLUMN `column_name` `data_type`;

ВОТ

  • «ИЗМЕНИТЬ ТАБЛИЦУ `имя_таблицы`» это команда, которая сообщает MySQL сервер для изменения таблицы с именем «table_name».
  • «ДОБАВИТЬ СТОЛБЕЦ `имя_столбца` `тип_данных`» это команда, которая сообщает MySQL сервер, чтобы добавить новый столбец с именем «column_name» и типом данных «data_type».

Предположим, Myflix представил онлайн billинг и платежи. С этой целью нас попросили добавить поле для номера кредитной карты в нашу таблицу участников. Для этого мы можем использовать команду ALTER. Прежде чем вносить какие-либо поправки, давайте сначала посмотрим на структуру таблицы участников. Сценарий, показанный ниже, поможет нам сделать это.

SHOW COLUMNS FROM `members`;
 
Field Type Null Key Default Extra
membership_number int(11) NO PRI NULL auto_increment
full_names varchar(350) NO NULL
gender varchar(6) YES NULL
date_of_birth date YES NULL
physical_address varchar(255) YES NULL
postal_address varchar(255) YES NULL
contact_number varchar(75) YES NULL
email varchar(255) YES NULL

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

ALTER TABLE `members` ADD COLUMN `credit_card_number` VARCHAR(25);

Выполнение приведенного выше сценария в MySQL против Myflixdb добавляет новый столбец с именем «Номер кредитной карты» в таблицу участников с VARCHAR в качестве типа данных. Выполнение сценария show columns дает нам следующее:wing результаты.

SHOW COLUMNS FROM `members`;
 
Field Type Null Key Default Extra
membership_number int(11) NO PRI NULL auto_increment
full_names varchar(350) NO NULL
gender varchar(6) YES NULL
date_of_birth date YES NULL
physical_address varchar(255) YES NULL
postal_address varchar(255) YES NULL
contact_number varchar(75) YES NULL
email varchar(255) YES NULL
credit_card_number varchar(25) YES

Как видно из полученных результатов, номер кредитной карты был добавлен в таблицу участников. Добавление нового столбца не влияет на данные, содержащиеся в данных участников.

ЧТО ТАКОЕ КОМАНДА ПАДЕНИЯ?

Команда DROP используется для

  1. Удалить базу данных из MySQL сервер
  2. Удалите объект (например, Таблица, Столбец) из базы данных.

Давайте теперь рассмотрим практические примеры использования команды DROP.

В нашем предыдущем примере с командой Alter мы добавили столбец с именем «Номер кредитной карты» в таблицу участников.

Предположим, онлайн billВключение функциональности займет некоторое время, и мы хотим УДАЛИТЬ столбец кредитной карты.

Мы можем использовать следующееwing скрипт

ALTER TABLE `members` DROP COLUMN `credit_card_number`;

Выполнение приведенного выше сценария удаляет столбец Credit_card_number из таблицы участников.

Давайте теперь посмотрим на столбцы в таблице участников, чтобы убедиться, что наш столбец был удален.

SHOW COLUMNS FROM `members`;

Выполнение приведенного выше сценария в MySQL рабочая среда против myflixdb дает нам следующееwing результаты.

 
Field Type Null Key Default Extra
membership_number int(11) NO PRI NULL auto_increment
full_names varchar(350) NO NULL
gender varchar(6) YES NULL
date_of_birth date YES NULL
physical_address varchar(255) YES NULL
postal_address varchar(255) YES NULL
contact_number varchar(75) YES NULL
email varchar(255) YES NULL

Обратите внимание, что номер кредитной карты был удален из списка полей.

ТАБЛИЦА ПАРАМЕТРОВ

Синтаксис удаления таблицы из базы данных следующий:

DROP TABLE `sample_table`;

Давайте посмотрим на пример

DROP TABLE `categories_archive`;

Выполнение приведенного выше сценария удаляет таблицу с именем «category_».archive` из нашей базы данных.

ЧТО ТАКОЕ КОМАНДА ПЕРЕИМЕНОВАНИЯ?

Команда переименования используется для измените имя существующего объекта базы данных (например, Таблица, Столбец) на новое имя.

Переименование таблицы не приводит к потере содержащихся в ней данных.

Команда переименования имеет следующий видwing базовый синтаксис.

RENAME TABLE `current_table_name` TO `new_table_name`;

Предположим, мы хотим переименовать таблицу Movierentals в Movie_rentals. Для этого мы можем использовать сценарий, показанный ниже.

RENAME TABLE `movierentals` TO `movie_rentals`;

Выполнение приведенного выше сценария переименовывает таблицу «movierentals» в «movie_rentals».

Теперь мы переименуем таблицу Movie_rentals обратно в ее исходное имя.

RENAME TABLE `movie_rentals` TO `movierentals`;

ИЗМЕНИТЬ КЛЮЧЕВОЕ СЛОВО

Изменить ключевые слова позволяет вам

  1. Изменить имя столбца
  2. Изменить тип данных столбца
  3. Изменение ограничений столбца

Давайте посмотрим на пример. Поле полных имен в таблице участников имеет тип данных varchar и ширину 150.

SHOW COLUMNS FROM `members`;

Выполнение приведенного выше сценария в MySQL рабочая среда против myflixdb дает нам следующееwing результаты.

 
Field Type Null Key Default Extra
membership_number int(11) NO PRI NULL auto_increment
full_names varchar(150) NO NULL
gender varchar(6) YES NULL
date_of_birth date YES NULL
physical_address varchar(255) YES NULL
postal_address varchar(255) YES NULL
contact_number varchar(75) YES NULL
email varchar(255) YES NULL

Предположим, мы хотим

  1. Измените имя поля с «full_names» на «fullname».
  2. Измените его на тип данных char шириной 250.
  3. Добавьте ограничение NOT NULL

Мы можем сделать это с помощью команды изменения следующим образом:

ALTER TABLE `members` CHANGE COLUMN `full_names` `fullname` char(250) NOT NULL;

Выполнение приведенного выше сценария в MySQL рабочая среда против myflixdb, а затем выполнение сценария показа столбцов, приведенного выше, дает следующееwing результаты.

 
Field Type Null Key Default Extra
membership_number int(11) NO PRI NULL auto_increment
fullnames char(250) NO NULL
gender varchar(6) YES NULL
date_of_birth date YES NULL
physical_address varchar(255) YES NULL
postal_address varchar(255) YES NULL
contact_number varchar(75) YES NULL
email varchar(255) YES NULL

ИЗМЕНИТЬ КЛЮЧЕВОЕ СЛОВО

Ключевое слово MODIFY позволяет вам

  1. Изменить тип данных столбца
  2. Изменить ограничения столбца

В приведенном выше примере CHANGE нам пришлось изменить имя поля, а также другие параметры.tails. Если пропустить имя поля в инструкции CHANGE, возникнет ошибка. Предположим, нас интересует только изменение типа данных и ограничений поля, не затрагивая имя поля. Для этого мы можем использовать ключевое слово MODIFY.

Скрипт ниже меняет ширину поля «полное имя» с 250 на 50.

ALTER TABLE `members`MODIFY `fullname` char(50) NOT NULL;

Выполнение приведенного выше сценария в MySQL рабочая среда против myflixdb, а затем выполнение сценария показа столбцов, приведенного выше, дает следующееwing результаты показаны ниже.

 
Field Type Null Key Default Extra
membership_number int(11) NO PRI NULL auto_increment
fullnames char(50) NO NULL
gender varchar(6) YES NULL
date_of_birth date YES NULL
physical_address varchar(255) YES NULL
postal_address varchar(255) YES NULL
contact_number varchar(75) YES NULL
email varchar(255) YES NULL

ПОСЛЕ КЛЮЧЕВОГО СЛОВА

Предположим, мы хотим добавить новый столбец в определенную позицию таблицы.

Мы можем использовать команду alter вместе с ключевым словом AFTER.

Сценарий ниже добавляет «date_of_registration» сразу после даты рождения в таблице участников.

ALTER TABLE `members` ADD `date_of_registration` date NULL AFTER `date_of_birth`;

Выполнение приведенного выше сценария в MySQL рабочая среда против myflixdb, а затем выполнение сценария показа столбцов, приведенного выше, дает следующееwing результаты показаны ниже.

 
Field Type Null Key Default Extra
membership_number int(11) NO PRI NULL auto_increment
fullnames char(50) NO NULL
gender varchar(6) YES NULL
date_of_birth date YES NULL
date_of_registration date YES NULL
physical_address varchar(255) YES NULL
postal_address varchar(255) YES NULL
contact_number varchar(75) YES NULL
email varchar(255) YES NULL
Note: The Hilighted row is added after date_of_birth cloumn

Обзор

  • Команда alter используется, когда мы хотим изменить базу данных или любой объект, содержащийся в базе данных.
  • Команда drop используется для удаления баз данных из MySQL сервер или объекты в базе данных.
  • Команда переименования используется для изменения имени таблицы на новое имя таблицы.
  • Ключевое слово Change позволяет изменить имя столбца, тип данных и ограничения.
  • Ключевое слово «Изменить» позволяет изменить тип данных столбца и ограничения.
  • Ключевое слово After используется для указания положения столбца в таблице.
  • Учебное пособие по проектированию базы данных в СУБД: изучение моделирования данных
  • MySQL Учебное пособие по Workbench: что такое, как установить и использовать
  • Что такое база данных? Определение, значение, типы с примером
  • MySQL Оператор SELECT с примерами
  • Учебник по SQL для начинающих: изучите SQL за 7 дней
  • MySQL Учебник для начинающих: учиться MySQL Основы за 7 дней
  • 17 лучших инструментов и программного обеспечения SQL (2024 г.)
  • MariaDB vs MySQL — Разница между ними

Как переименовать таблицу в 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;

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *