MUSQL - MAINĪT, PILINĀT, PĀRVADĀT, PĀRVEIDOT

Anonim

KĀDA IR MAZĀKĀ KOMANDA?

Kā saka, pārmaiņas ir vienīgā konstante

Ar laiku mainās arī biznesa prasības. Mainoties biznesa prasībām, ir jāmaina arī datu bāzu noformējums.

MySQL nodrošina ALTER funkciju, kas palīdz mums iekļaut izmaiņas jau esošajā datu bāzes dizainā .

Komanda alter tiek izmantota, lai modificētu esošu datu bāzi, tabulu, skatu vai citus datu bāzes objektus, kas, iespējams, būs jāmaina datu bāzes dzīves cikla laikā.

Pieņemsim, ka mēs esam pabeiguši savu datu bāzes dizainu un tas ir ieviests. Mūsu datu bāzes lietotāji to izmanto, un pēc tam viņi saprot, ka daļa no svarīgākās informācijas tika izlaista projektēšanas posmā. Viņi nevēlas zaudēt esošos datus, bet vienkārši vēlas iekļaut jauno informāciju. Komanda alter noder šādās situācijās. Mēs varam izmantot komandu alter, lai mainītu lauka datu tipu no say string uz ciparu, mainītu lauka nosaukumu uz jaunu nosaukumu vai pat pievienotu jaunu kolonnu tabulā.

Mainīt- sintakse

Pamata sintakse, ko izmanto, lai kolonnu pievienotu jau esošai tabulai, ir parādīta zemāk

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

ŠEIT

  • "ALTER TABLE" table_name "" ir komanda, kas MySQL serverim liek mainīt tabulu ar nosaukumu "table_name".
  • "ADD COLUMN" column_name "data_type" " ir komanda, kas MySQL serverim liek pievienot jaunu kolonnu ar nosaukumu" column_name "ar datu tipu" data_type ".

Pieņemsim, ka Myflix ir ieviesis tiešsaistes norēķinus un maksājumus. Šajā nolūkā mūsu dalībnieku tabulā mums tika lūgts pievienot lauku kredītkartes numuram. Lai to izdarītu, mēs varam izmantot ALTER komandu. Pirms jebkādu grozījumu veikšanas vispirms apskatīsim dalībnieku tabulas struktūru. Zemāk redzamais skripts mums to palīdz.

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

Lai pievienotu jaunu lauku dalībnieku tabulai, mēs varam izmantot zemāk redzamo skriptu.

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

Izpildot iepriekš minēto skriptu MySQL pret Myflixdb, dalībnieku tabulai tiek pievienota jauna sleja ar kredītkartes numuru, kā datu tipu VARCHAR. Izpildot skates kolonnu skriptu, tiek iegūti šādi rezultāti.

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

Kā redzat pēc atgrieztajiem rezultātiem, dalībnieku tabulai ir pievienots kredītkartes numurs. Jaunās kolonnas pievienošana neietekmē dalībnieku datos esošos datus.

KĀDA IR PILES KOMANDA?

DROP komanda ir pieradusi

  1. Dzēst datu bāzi no MySQL servera
  2. Dzēsiet objektu (piemēram, Tabula, Kolonna) no datu bāzes.

Apskatīsim praktiskus piemērus, kas izmanto komandu DROP.

Iepriekšējā piemērā par komandu Alter pievienojām dalībnieku tabulai kolonnu ar kredītkartes numuru.

Pieņemsim, ka tiešsaistes norēķinu funkcionalitāte prasīs zināmu laiku, un mēs vēlamies AIZPILDĪT kredītkartes kolonnu

Mēs varam izmantot šādu skriptu

ALTER TABLE `members` DROP COLUMN `credit_card_number`;

Izpildot iepriekš minēto skriptu, dalībnieku tabulā tiek nomesta kolonna credit_card_number

Tagad pārbaudīsim dalībnieku tabulas kolonnas, lai apstiprinātu, vai mūsu kolonna ir nomesta.

SHOW COLUMNS FROM `members`;

Iepriekš minētā skripta izpildīšana MySQL darbagaldā pret myflixdb dod mums šādus rezultātus.

 
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

Ievērojiet, ka kredītkartes numurs ir nomests no lauku saraksta.

PILES GALDA

Tabulas DROP sintakse no datu bāzes ir šāda -

DROP TABLE `sample_table`;

Apskatīsim piemēru

DROP TABLE `categories_archive`;

Izpildot iepriekš minēto skriptu, no mūsu datu bāzes tiek izdzēsta tabula ar nosaukumu "categories_archive".

KĀDA IR NOSAUKUMA KOMANDA?

Komanda pārdēvēt tiek izmantota, lai mainītu esoša datu bāzes objekta (piemēram, Tabula, Kolonna) nosaukumu uz jaunu nosaukumu .

Pārdēvējot tabulu, tā nezaudē tajā esošos datus.

Sintakse: -

Pārdēvēšanas komandai ir šāda pamata sintakse.

RENAME TABLE `current_table_name` TO `new_table_name`;

Pieņemsim, ka mēs vēlamies pārdēvēt movierentals tabulu uz movie_rentals, lai to sasniegtu, mēs varam izmantot zemāk redzamo skriptu.

RENAME TABLE `movierentals` TO `movie_rentals`;

Izpildot iepriekšminēto skriptu, tabula “movierentals” tiek pārdēvēta par “movie_rentals”.

Tagad filmu_rentals tabulu pārdēvēsim par sākotnējo nosaukumu.

RENAME TABLE `movie_rentals` TO `movierentals`;

MAINĪT ATSLĒGVĀRDU

Mainīt atslēgvārdus ļauj

  1. Mainīt kolonnas nosaukumu
  2. Mainīt kolonnas datu veidu
  3. Mainīt kolonnu ierobežojumus

Apskatīsim piemēru. Dalībnieku tabulas pilno vārdu lauks ir ar varchar datu tipu, un tā platums ir 150.

SHOW COLUMNS FROM `members`;

Iepriekš minētā skripta izpildīšana MySQL darbagaldā pret myflixdb dod mums šādus rezultātus.

 
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

Pieņemsim, ka mēs to vēlamies

  1. Mainiet lauka nosaukumu no "full_names" uz "fullname
  2. Mainiet to uz char datu tipu ar platumu 250
  3. Pievienojiet ierobežojumu NOT NULL

Mēs to varam paveikt, izmantojot komandu mainīt šādi:

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

Izpildot iepriekš minēto skriptu MySQL darbagaldā pret myflixdb un pēc tam izpildot iepriekš doto skriptu skriptu, tiek iegūti šādi rezultāti.

 
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

PĀRVEIDOT ATSLĒGVĀRDU

Atslēgvārds MODIFY ļauj

  1. Mainīt kolonnas datu tipu
  2. Mainīt kolonnu ierobežojumus

Iepriekš redzamajā MAINĪT piemērā mums bija jāmaina lauka nosaukums, kā arī cita informācija. Lauka nosaukuma izlaišana no CHANGE priekšraksta radīs kļūdu. Pieņemsim, ka mūs interesē tikai datu veida un ierobežojumu maiņa laukā, neietekmējot lauka nosaukumu, lai to paveiktu, mēs varam izmantot atslēgvārdu MODIFY.

Zemāk esošais skripts maina lauka "pilna nosaukums" platumu no 250 līdz 50.

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

Izpildot iepriekš minēto skriptu MySQL darbagaldā pret myflixdb un pēc tam izpildot iepriekš doto skriptu skriptu, tiek parādīti šādi rezultāti.

 
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

PĒC ATSLĒGVĀRDA

Pieņemsim, ka mēs vēlamies pievienot jaunu kolonnu noteiktā tabulas vietā.

Komandu alter varam izmantot kopā ar AFTER atslēgvārdu.

Zemāk esošajā skriptā dalībnieku tabulā tiek pievienots nosaukums “date_of_registration” tieši pēc dzimšanas datuma.

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

Izpildot iepriekš minēto skriptu MySQL darbagaldā pret myflixdb un pēc tam izpildot iepriekš doto skriptu skriptu, tiek parādīti šādi rezultāti.

 
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

Kopsavilkums

  • Komanda alter tiek izmantota, ja mēs vēlamies modificēt datu bāzi vai jebkuru datu bāzē esošu objektu.
  • Komanda nomest tiek izmantota, lai dzēstu datu bāzes no MySQL servera vai objektiem datu bāzē.
  • Komanda pārdēvēt tiek izmantota, lai mainītu tabulas nosaukumu uz jaunu tabulas nosaukumu.
  • Mainīt atslēgvārdu ļauj mainīt kolonnas nosaukumu, datu tipu un ierobežojumus
  • Modificēt atslēgvārdu ļauj mainīt kolonnas datu tipu un ierobežojumus
  • Pēc atslēgvārda tiek izmantota kolonnas pozīcijas norādīšana tabulā