MYSQL – MUUTA, PUDOTA, NIMEÄ UUDELLEEN, MUOKKAA

Mikä on ALTER-komento?

Kuten sanonta kuuluu Muutos on ainoa pysyvä

Ajan myötä myös liiketoiminnan vaatimukset muuttuvat. Liiketoiminnan vaatimusten muuttuessa myös tietokantasuunnittelua on muutettava.

MySQL tarjoaa MUUTTAA toiminto, joka auttaa meitä sisällyttää muutokset jo olemassa olevaan tietokannan suunnitteluun.

Alter-komentoa käytetään olemassa olevan tietokannan, taulukon, näkymän tai muiden tietokantaobjektien muokkaamiseen, joita on ehkä muutettava tietokannan elinkaaren aikana.

Oletetaan, että olemme saaneet tietokantasuunnittelun valmiiksi ja se on toteutettu. Tietokannan käyttäjät käyttävät sitä ja sitten he huomaavat, että osa tärkeästä tiedosta on jätetty pois suunnitteluvaiheessa. He eivät halua menettää olemassa olevia tietoja, vaan haluavat vain sisällyttää uuden tiedon. Alter-komento on kätevä tällaisissa tilanteissa. Alter-komennolla voimme muuttaa kentän tietotyyppiä sanotusta merkkijonosta numeeriseksi, muuttaa kentän nimen uudeksi nimeksi tai jopa lisätä uuden sarakkeen taulukkoon.

Alter – syntaksi

Perussyntaksi, jota käytetään sarakkeen lisäämiseen jo olemassa olevaan taulukkoon, on esitetty alla

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

TÄÄLTÄ

  • "ALTER TABLE `table_name"" on komento, joka kertoo MySQL palvelin muuttaa taulukkoa nimeltä "taulukon_nimi".
  • "LISÄÄ SARAKE "sarakkeen_nimi" "data_tyyppi"" on komento, joka kertoo MySQL palvelin lisää uuden sarakkeen nimeltä "sarakkeen_nimi", jonka tietotyyppi on "data_tyyppi".

Oletetaan, että Myflix on ottanut käyttöön verkkolaskutuksen ja -maksut. Sitä varten meitä on pyydetty lisäämään kenttä luottokortin numeroa varten jäsentaulukkoomme. Voimme käyttää ALTER-komentoa tähän. Katsotaanpa ensin jäsentaulukon rakennetta ennen kuin teemme muutoksia. Alla oleva käsikirjoitus auttaa meitä tekemään sen.

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

Voimme käyttää alla näkyvää komentosarjaa lisätäksesi uuden kentän jäsentaulukkoon.

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

Suoritetaan yllä oleva komentosarja MySQL Myflixdb:tä vastaan ​​lisää uuden sarakkeen nimeltä luottokortin numero jäsentaulukkoon, jossa tietotyypinä on VARCHAR. Näytä sarakkeet -skriptin suorittaminen antaa meille seuraavat tulokset.

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

Kuten palautetuista tuloksista näkyy, luottokortin numero on lisätty jäsentaulukkoon. Uuden sarakkeen lisääminen ei vaikuta jäsentietojen sisältämiin tietoihin.

MIKÄ ON PUDOTA KOMENTO?

DROP-komentoa käytetään

  1. Poista tietokanta kohteesta MySQL palvelin
  2. Poista objekti (kuten taulukko, sarake) tietokannasta.

Katsotaanpa nyt käytännön esimerkkejä, jotka käyttävät DROP-komentoa.

Edellisessä esimerkissämme Alter Commandista lisäsimme jäsentaulukkoon sarakkeen nimeltä luottokortin numero.

Oletetaan, että verkkolaskutustoiminto vie jonkin aikaa ja haluamme PUHDISTAA luottokorttisarakkeen

Voimme käyttää seuraavaa skriptiä

ALTER TABLE `members` DROP COLUMN `credit_card_number`;

Yllä olevan skriptin suorittaminen pudottaa sarakkeen credit_card_number jäsentaulukosta

Katsotaanpa nyt jäsentaulukon sarakkeita varmistaaksemme, onko sarakkeemme pudonnut.

SHOW COLUMNS FROM `members`;

Suoritetaan yllä oleva komentosarja MySQL työpenkki myflixdb:tä vastaan ​​antaa meille seuraavat tulokset.

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

Huomaa, että luottokortin numero on pudonnut kenttäluettelosta.

PUDOTA PÖYTÄ

Syntaksi taulukon pudottamiseksi tietokannasta on seuraava -

DROP TABLE `sample_table`;

Katsotaanpa esimerkkiä

DROP TABLE `categories_archive`;

Yllä olevan komentosarjan suorittaminen poistaa tietokannastamme taulukon "kategoriat_arkisto".

MIKÄ ON NIMIKÄYNTÖ?

Nimeä uudelleen -komentoa käytetään muuta olemassa olevan tietokantaobjektin nimi (kuten Taulukko, Sarake) uudeksi nimeksi.

Taulukon uudelleennimeäminen ei johda siihen, että sen sisältämät tiedot menetetään.

Syntaksi:-

Rename-komennolla on seuraava perussyntaksi.

RENAME TABLE `current_table_name` TO `new_table_name`;

Oletetaan, että haluamme nimetä movierentals-taulukon uudelleen muotoon movie_rentals, voimme käyttää alla olevaa käsikirjoitusta saavuttaaksemme sen.

RENAME TABLE `movierentals` TO `movie_rentals`;

Yllä olevan komentosarjan suorittaminen nimeää taulukon "movierentals" uudelleen muotoon "movie_rentals".

Nimeämme nyt movie_rentals-taulukon takaisin alkuperäiseen nimeensä.

RENAME TABLE `movie_rentals` TO `movierentals`;

MUUTA AVAINSANA

Muuta avainsanoja mahdollistaa sen

  1. Muuta sarakkeen nimeä
  2. Muuta sarakkeen tietotyyppiä
  3. Muuta sarakkeen rajoituksia

Katsotaanpa esimerkkiä. Jäsentaulukon täydet nimet -kenttä on varchar-tietotyyppiä ja sen leveys on 150.

SHOW COLUMNS FROM `members`;

Suoritetaan yllä oleva komentosarja MySQL työpenkki myflixdb:tä vastaan ​​antaa meille seuraavat tulokset.

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

Oletetaan, että haluamme

  1. Muuta kentän nimi arvosta "full_names" muotoon "fullname".
  2. Muuta se char-tietotyypiksi, jonka leveys on 250
  3. Lisää NOT NULL -rajoitus

Voimme tehdä tämän käyttämällä muutoskomentoa seuraavasti -

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

Suoritetaan yllä oleva komentosarja MySQL workbench myflixdb:tä vastaan ​​ja sitten yllä olevan näytä sarakkeet -komentosarjan suorittaminen antaa seuraavat tulokset.

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

MUOKKAA AVAINSANAA

MODIFY-avainsanan avulla voit

  1. Muokkaa sarakkeen tietotyyppiä
  2. Muokkaa sarakkeen rajoituksia

Yllä olevassa CHANGE-esimerkissä jouduimme muuttamaan kentän nimeä ja muita yksityiskohtia. Kentän nimen jättäminen pois CHANGE-käskystä aiheuttaa virheen. Oletetaan, että olemme kiinnostuneita vain kentän tietotyypin ja rajoitusten muuttamisesta vaikuttamatta kentän nimeen, voimme käyttää MODIFY-avainsanaa tämän saavuttamiseksi.

Alla oleva komentosarja muuttaa "koko nimi" -kentän leveyden 250:stä 50:een.

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

Suoritetaan yllä oleva komentosarja MySQL workbench myflixdb:tä vastaan ​​ja sitten yllä olevan näytä sarakkeet -skriptin suorittaminen antaa seuraavat alla näkyvät tulokset.

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

AVAINSANAN JÄLKEEN

Oletetaan, että haluamme lisätä uuden sarakkeen taulukon tiettyyn kohtaan.

Voimme käyttää alter-komentoa yhdessä AFTER-avainsanan kanssa.

Alla oleva komentosarja lisää "date_of_registration" heti syntymäpäivän jälkeen jäsentaulukkoon.

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

Suoritetaan yllä oleva komentosarja MySQL workbench myflixdb:tä vastaan ​​ja sitten yllä olevan näytä sarakkeet -skriptin suorittaminen antaa seuraavat alla näkyvät tulokset.

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

Yhteenveto

  • Alter-komentoa käytetään, kun haluamme muokata tietokantaa tai mitä tahansa tietokannan sisältämää objektia.
  • Pudotuskomentoa käytetään tietokantojen poistamiseen MySQL palvelin tai tietokannan objekteja.
  • Rename-komentoa käytetään taulukon nimen muuttamiseen uudeksi taulukon nimeksi.
  • Muuta-avainsanalla voit muuttaa sarakkeen nimeä , tietotyyppiä ja rajoituksia
  • Muokkaa avainsanaa -toiminnolla voit muokata sarakkeen tietotyyppiä ja rajoituksia
  • After-avainsanaa käytetään määrittämään sarakkeen sijainti taulukossa