logo

МиСКЛ Ренаме Табле

Понекад име наше табеле није смислено, па је потребно преименовати или променити име табеле. МиСКЛ пружа корисну синтаксу која може преименовати једну или више табела у тренутној бази података.

Синтакса

Следеће је синтакса која се користи за промену имена табеле:

 mysql> RENAME old_table TO new_table; 

Ево, морамо се уверити у то ново_име_табеле не сме постојати, и олд_табле_наме треба да буду присутни у бази података. У супротном, избациће поруку о грешци. То је да се осигура да табела није закључана као и да нема активних трансакција пре извршења ове изјаве.

НАПОМЕНА: Ако користимо наредбу РЕНАМЕ ТАБЛЕ, потребно је да имамо привилегије АЛТЕР и ДРОП ТАБЛЕ за постојећу табелу. Такође, ова изјава не може променити име привремене табеле.

Такође можемо користити МиСКЛ ПРЕНАМЕН ТАБЕЛЕ наредбу да промените више од једног имена табеле са једном наредбом, као што је приказано у наставку:

 RENAME TABLE old_tab1 TO new_tab1, old_tab2 TO new_tab2, old_tab3 TO new_tab3; 

Од МиСКЛ 8.0.13 верзију, можемо променити старо име табеле закључано наредбом ЛОЦК и такође користи клаузулу ВРИТЕ ЛОЦК. На пример, следеће су важеће изјаве:

 mysql> LOCK TABLE old_tab_name1 WRITE; RENAME TABLE old_tab_name1 TO new_tab_name1, new_tab_name1 TO new_tab_name2; 

Следеће изјаве нису дозвољене:

 mysql> LOCK TABLE old_tab_name1 READ; RENAME TABLE old_tab_name1 TO new_tab_name1, new_tab_name1 TO new_tab_name2; 

Пре верзије МиСКЛ 8.0.13, не можемо да променимо име табеле која је била закључана наредбом ЛОЦК ТАБЛЕ.

МиСКЛ такође користи наредбу РЕНАМЕ ТАБЛЕ за премештање табеле из једне базе података у другу базу података, што је приказано у наставку:

 mysql> RENAME TABLE current_db.tablel_name TO other_db.tablel_name; 

МиСКЛ РЕНАМЕ ТАБЛЕ Пример

Хајде да разумемо како наредба РЕНАМЕ ТАБЛЕ функционише у МиСКЛ-у кроз различите примере. Претпоставимо да имамо табелу са именом ЗАПОСЛЕНИ , и из неког разлога, постоји потреба да се промени у табелу са именом ЦУСТОМЕР .

Назив табеле: запослени

МиСКЛ Ренаме Табле

Затим извршите следећу синтаксу да промените име табеле:

 mysql> RENAME employee TO customer; 

Излаз

зип команду у линуксу

Видећемо да ће табела под називом 'емплоиее' бити промењена у ново име табеле 'цустомер':

МиСКЛ Ренаме Табле

У горњем излазу можемо видети да ако користимо име табеле Емплоиее након што извршимо наредбу РЕНАМЕ ТАБЛЕ, то ће избацити поруку о грешци.

Како преименовати више табела

Наредба РЕНАМЕ ТАБЛЕ у МиСКЛ-у нам такође омогућава да променимо више од једног имена табеле у оквиру једне изјаве. Погледајте изјаву у наставку:

Претпоставимо да је наша база података ' миемплоиеедб ' има следеће табеле:

МиСКЛ Ренаме Табле

Ако желимо да променимо име табеле купца у запослени и мајице са именом стола у одећу, извршите следећу наредбу:

 mysql> RENAME TABLE customer TO employee, shirts TO garments; 

Излаз

Можемо видети да су име табеле купац у запослени и мајице имена стола у одевне предмете успешно преименоване.

МиСКЛ Ренаме Табле

Преименујте табелу помоћу наредбе АЛТЕР

Наредба АЛТЕР ТАБЛЕ се такође може користити за преименовање постојеће табеле у тренутној бази података. Следеће је синтакса наредбе АЛТЕР ТАБЛЕ:

 ALTER TABLE old_table_name RENAME TO new_table_name; 

Погледајте следећи упит који мења постојеће одеће за назив табеле у нове мајице са именом табеле:

где су подешавања претраживача
 mysql> ALTER TABLE garments RENAME TO shirts: 

Излаз

Овде можемо видети да су одевни предмети са називом табеле преименовани у кошуље са именима табеле.

МиСКЛ Ренаме Табле

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

Привремена табела нам омогућава да задржимо привремене податке, који су видљиви и доступни само у тренутној сесији. Дакле, прво морамо да креирамо привремену табелу користећи следећу изјаву:

 mysql> CREATE TEMPORARY TABLE Students( name VARCHAR(40) NOT NULL, total_marks DECIMAL(12,2) NOT NULL DEFAULT 0.00, total_subjects INT UNSIGNED NOT NULL DEFAULT 0); 

Затим уметните вредности у ову табелу:

 mysql> INSERT INTO Students(name, total_marks, total_subjects) VALUES ('Joseph', 150.75, 2), ('Peter', 180.75, 2); 

Затим покрените команду схов табле да проверите привремену табелу:

 mysql> SELECT * FROM Students; 

Сада покрените следећу команду да промените име привремене табеле:

 mysql> RENAME TABLE Students TO student_info; 

Избациће поруку о грешци, као што је приказано у наставку:

МиСКЛ Ренаме Табле

Дакле, МиСКЛ дозвољава наредби АЛТЕР табле да преименује привремену табелу:

 mysql> ALTER TABLE Students RENAME TO student_info; 

Излаз

МиСКЛ Ренаме Табле