Kartais mūsų stulpelio pavadinimas neturi prasmės, todėl reikia pervardyti arba pakeisti stulpelio pavadinimą. MySQL suteikia naudingą sintaksę, kuri gali pervardyti vieną ar daugiau lentelės stulpelių. Prieš pervadinant stulpelį, būtina turėti keletą privilegijų, pvz., ALTER ir DROP teiginių privilegijos.
vilkas ar lapė
MySQL gali pervardyti stulpelio pavadinimą dviem būdais:
- Naudojant teiginį CHANGE
- Naudojant teiginį RENAME
Naudojant pareiškimą CHANGE:
Toliau pateikiama sintaksė, iliustruojanti stulpelio pervadinimą naudojant CHANGE teiginį:
ALTER TABLE table_name CHANGE COLUMN old_column_name new_column_name Data Type;
Šioje sintaksėje matome, kad gali reikėti iš naujo nurodyti visus stulpelio atributus. Ši sintaksė taip pat gali leisti keisti stulpelio duomenų tipus. Tačiau kartais teiginys CHANGE gali turėti šių trūkumų:
- Visa informacija apie stulpelių atributus gali būti nepasiekiama programai pervadinti.
- Egzistuoja netyčinio duomenų tipo pakeitimo rizika, dėl kurios gali būti prarasti programos duomenys.
Pavyzdys
Supraskime, kaip veikia teiginys CHANGE MySQL norėdami pervardyti stulpelį įvairiais pavyzdžiais. Tarkime, kad turime lentelę pavadinimu pusiausvyrą kuriame yra tokie duomenys:
kas daro kompiuterį greitą
Dėl tam tikrų priežasčių turime pakeisti stulpelio pavadinimas account_num ir jo duomenų tipas . Tokiu atveju pirmiausia patikriname lentelės struktūrą naudodami APIBŪDINTI pareiškimas taip:
Šiame paveikslėlyje matome, kad stulpelio pavadinimo duomenų tipas sąskaitos_nr yra tarpt . Ir mes norime pakeisti šio stulpelio pavadinimą kaip sąskaitos numeris ir jo duomenų tipas kaip int į varcharą . Taigi, norėdami tai padaryti, galime įvykdyti žemiau pateiktą teiginį:
mysql> ALTER TABLE balance CHANGE COLUMN account_num account_no VARCHAR(25);
Įvykdę aukščiau pateiktą komandą, galime ją patikrinti dar kartą naudodami DESCRIBE teiginį. Toliau pateiktame paveikslėlyje stulpelio pavadinimas account_num ir jo duomenų tipas buvo sėkmingai pakeisti.
Naudojant RENAME pareiškimą:
Norėdami pašalinti CHANGE teiginio trūkumą, MySQL pasiūlė tokią sintaksę, kuri iliustruoja stulpelio pavadinimo keitimą naudojant RENAME teiginį:
ALTER TABLE table_name RENAME COLUMN old_column_name TO new_column_name;
Pavyzdys
Leiskite mums suprasti, kaip RENAME sakinys veikia MySQL, kad pakeistų stulpelio pavadinimą per įvairius pavyzdžius. Tarkime, kad turime lentelę pavadinimu klientas kuriame yra šie duomenys:
Tarkime, kad norime pakeisti stulpelio pavadinimo paskyrą sąskaitos numeris nekeičiant jo duomenų tipų. Tai galime padaryti vykdydami toliau pateiktą teiginį:
mysql> ALTER TABLE customer RENAME COLUMN account to account_no;
Įvykdę aukščiau pateiktą komandą, galime ją patikrinti naudodami PASIRINKTI vėl pareiškimas. Toliau pateiktame paveikslėlyje stulpelio pavadinimo paskyra sėkmingai pakeista.
java vs c++
Kelių stulpelių pervadinimas
„MySQL“ taip pat leidžia mums pakeisti kelių stulpelių pavadinimus viename sakinyje. Jei norime pervardyti kelis stulpelių pavadinimus, galime naudoti toliau pateiktą sintaksę:
ALTER TABLE table_name CHANGE old_column_name1 new_column_name1 Data Type, CHANGE old_column_name2 new_column_name2 Data Type, ... ... CHANGE old_column_nameN new_column_nameN Data Type;
ARBA
ALTER TABLE table_name RENAME COLUMN old_column_name1 TO new_column_name1, RENAME COLUMN old_column_name2 TO new_column_name2, ... ... RENAME COLUMN old_column_nameN TO new_column_nameN;
Pavyzdys
Tarkime, mes norime pasikeisti stulpelių pavadinimai ID ir kliento_vardas nuo klientų stalas . Norėdami pakeisti kelis stulpelių pavadinimus viename sakinyje, galime naudoti teiginį taip:
mysql> ALTER TABLE customer CHANGE id cust_id int, CHANGE customer_name cust_name varchar(45);
Įvykdę aukščiau pateiktą komandą, galime ją patikrinti dar kartą naudodami SELECT teiginį. Žemiau esančiame paveikslėlyje stulpelio pavadinimo ID ir kliento_vardas sėkmingai pakeisti:
python rūšiavimo eilutė
Dar kartą pakeiskime šiuo metu keičiamo stulpelio pavadinimą naudodami RENAME COLUMN teiginį taip:
mysql> ALTER TABLE customer RENAME COLUMN cust_id TO id, RENAME COLUMN cust_name TO customer_name;
Įvykdę aukščiau pateiktą komandą, galime ją patikrinti dar kartą naudodami DESCRIBE teiginį. Žemiau esančiame paveikslėlyje, stulpelio pavadinimas cust_id ir cust_name sėkmingai pasikeitė:
Šiame straipsnyje sužinojome apie MySQL RENAME stulpelio įvadą ir kaip pakeisti stulpelio pavadinimą nurodytoje lentelėje, kartu su užklausos pavyzdžiu, kad būtų geriau suprasti.