Néha a tábla neve nem értelmes, ezért át kell nevezni vagy módosítani kell a táblázat nevét. A MySQL hasznos szintaxist biztosít, amely átnevez egy vagy több táblát az aktuális adatbázisban.
Szintaxis
A táblázat nevének megváltoztatásához használt szintaxis a következő:
mysql> RENAME old_table TO new_table;
Itt meg kell győződnünk róla új_tábla_neve nem létezhet, és régi_tábla_neve jelen kell lennie az adatbázisban. Ellenkező esetben hibaüzenetet küld. Ennek az utasításnak a végrehajtása előtt biztosítani kell, hogy a tábla ne legyen zárolva, és ne legyenek aktív tranzakciók.
MEGJEGYZÉS: Ha a RENAME TABLE utasítást használjuk, akkor ALTER és DROP TABLE jogosultságokkal kell rendelkeznie a meglévő táblához. Ezenkívül ez az utasítás nem módosíthatja az ideiglenes tábla nevét.
Használhatjuk a MySQL-t is A TÁBLÁZAT ÁTNEVEZÉSE utasítással egynél több táblanevet módosíthat egyetlen utasítással, az alábbiak szerint:
RENAME TABLE old_tab1 TO new_tab1, old_tab2 TO new_tab2, old_tab3 TO new_tab3;
Tól MySQL 8.0.13 verzióban megváltoztathatjuk a régi tábla nevét, amely zárolt LOCK utasítással, és használja a WRITE LOCK záradékot is. Például az alábbi érvényes állítás:
mysql> LOCK TABLE old_tab_name1 WRITE; RENAME TABLE old_tab_name1 TO new_tab_name1, new_tab_name1 TO new_tab_name2;
A következő kijelentések nem megengedettek:
mysql> LOCK TABLE old_tab_name1 READ; RENAME TABLE old_tab_name1 TO new_tab_name1, new_tab_name1 TO new_tab_name2;
A MySQL 8.0.13 verzió előtt nem tudjuk megváltoztatni a LOCK TABLE utasítással zárolt tábla nevét.
A MySQL a RENAME TABLE utasítást is használja egy tábla egyik adatbázisból egy másik adatbázisba való áthelyezéséhez, amely az alábbiakban látható:
mysql> RENAME TABLE current_db.tablel_name TO other_db.tablel_name;
MySQL RENAME TABLE Példa
Nézzük meg, hogyan működik a RENAME TABLE utasítás a MySQL-ben a különféle példákon keresztül. Tegyük fel, hogy van egy nevű táblázatunk MUNKAVÁLLALÓ , és valamilyen okból kifolyólag meg kell változtatni a nevű táblába VEVŐ .
Táblázat neve: alkalmazott
Ezután hajtsa végre a következő szintaxist a tábla nevének megváltoztatásához:
mysql> RENAME employee TO customer;
Kimenet
aludni javascriptben
Látni fogjuk, hogy a „munkavállaló” nevű tábla egy új „ügyfél” nevű táblára változik:
A fenti kimenetben láthatjuk, hogy ha egy RENAME TABLE utasítás végrehajtása után a tábla neve munkavállalót használjuk, akkor hibaüzenetet fog kiadni.
Több tábla átnevezése
A RENAME TABLE utasítás a MySQL-ben azt is lehetővé teszi, hogy egy utasításon belül több táblanevet is módosítsunk. Lásd az alábbi nyilatkozatot:
Tegyük fel, hogy az adatbázisunk alkalmazottamb ', amely a következő táblázatokkal rendelkezik:
Ha a vevő tábla nevét munkavállalóra, az asztalnév ingeket ruhákra szeretnénk változtatni, hajtsa végre a következő utasítást:
mysql> RENAME TABLE customer TO employee, shirts TO garments;
Kimenet
Láthatjuk, hogy a vevő tábla neve alkalmazottra, és a táblázatnév ingek ruházatra sikeresen át lett nevezve.
A táblázat átnevezése ALTER utasítással
Az ALTER TABLE utasítás az aktuális adatbázisban meglévő tábla átnevezésére is használható. A következő az ALTER TABLE utasítás szintaxisa:
ALTER TABLE old_table_name RENAME TO new_table_name;
Tekintse meg a következő lekérdezést, amely a meglévő táblázatnév-ruhákat új táblázatnév-ingekké változtatja:
mit csinál ravel a pythonban
mysql> ALTER TABLE garments RENAME TO shirts:
Kimenet
Itt láthatjuk, hogy a táblázat a ruhadarabokat táblanév ingekké nevezi át.
Az ideiglenes táblázat átnevezése
Egy ideiglenes tábla lehetővé teszi az ideiglenes adatok megtartását, amelyek csak az aktuális munkamenetben láthatók és hozzáférhetők. Tehát először létre kell hoznunk egy ideiglenes táblát a következő utasítással:
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);
Ezután szúrjon be értékeket ebbe a táblázatba:
mysql> INSERT INTO Students(name, total_marks, total_subjects) VALUES ('Joseph', 150.75, 2), ('Peter', 180.75, 2);
Ezután futtassa a show table parancsot az ideiglenes tábla ellenőrzéséhez:
mysql> SELECT * FROM Students;
Most futtassa a következő parancsot az ideiglenes tábla nevének megváltoztatásához:
mysql> RENAME TABLE Students TO student_info;
Hibaüzenetet küld, az alábbiak szerint:
Így a MySQL lehetővé teszi az ALTER tábla utasítással az ideiglenes tábla átnevezését:
mysql> ALTER TABLE Students RENAME TO student_info;
Kimenet