SQL:ssä tarvitaan usein tietokannan rakenteellisia muutoksia, kuten taulukoiden tai sarakkeiden uudelleennimeämistä, uusien sarakkeiden lisäämistä tai tietotyyppien vaihtamista. ALTER TABLE -komennon avulla nämä muutokset voidaan tehdä tehokkaasti vaikuttamatta olemassa oleviin tietoihin. Se on välttämätön komento tietokantaskeemojen hallinnassa ja päivittämisessä sovellusten vaatimusten kehittyessä.
Esimerkki: Luodaan ensin esimerkki opiskelijataulukosta ALTER-komennon esittelyyn:
Kysely:
ALTER TABLE students
RENAME TO learners;
Lähtö:
ALTER-komennon syntaksi
Tässä ovat yleiset syntaksimuodot ALTER TABLE -komennon käyttämiselle:
1. Taulukon nimeäminen uudelleen
ALTER TABLE taulukon_nimi
NIMEÄ UUDELLEEN UUSI_taulukon_nimi;
2. Sarakkeen nimeäminen uudelleen
ALTER TABLE taulukon_nimi
NIMEÄ UUDELLEEN SARAKE vanha_sarakkeen_nimi uuteen_sarakkeen_nimi;
3. Uuden sarakkeen lisääminen
ALTER TABLE taulukon_nimi
LISÄÄ sarakkeen_nimi tietotyyppi;10 1 miljoonasta
ALTER TABLE taulukon_nimi
MODIFY COLUMN sarakkeen_nimi uusi_tietotyyppi;
Esimerkkejä ALTER-komennosta SQL:ssä
Alla on käytännön esimerkkejä, jotka auttavat meitä ymmärtämään, kuinka ALTER-komentoa käytetään tehokkaasti erilaisissa skenaarioissa. Nämä esimerkit sisältävät taulukoiden tai sarakkeiden uudelleennimeämisen ja uusien sarakkeiden lisäämisen tai muuttuva sarake tietotyypit.
1. Luo näytetaulukko
Luodaan ensin esimerkki opiskelijasta taulukko ALTERin esittelyyn komento:
CREATE TABLE Student (
id INT PRIMARY KEY
name VARCHAR(50)
age INT
email VARCHAR(50)
phone VARCHAR(20)
);
Lisätään tietoja ja suoritetaan sitten ALTER-toiminto ymmärtääksemme paremmin alter-komennon.
INSERT INTO Student (id name age email phone)
VALUES
(1 'Amit' 20 '[email protected]' '9999999999')
(2 'Rahul' 22 '[email protected]' '8888888888')
(3 'Priya' 21 '[email protected]' '7777777777')
(4 'Sonia' 23 '[email protected]' '6666666666')
(5 'Kiran' 19 '[email protected]' '5555555555');
Lähtö
Esimerkki 1: Nimeä sarake uudelleen
Muuta sarakkeen nimeksi FIRST_NAME taulukossa Student. Jos haluat muuttaa olemassa olevan taulukon sarakkeen nimeä, meidän on käytettävä Column-avainsanaa ennen kuin kirjoitamme muutettavan olemassa olevan sarakkeen nimen.
Syntaksi
ALTER TABLE Opiskelija NIMI RENAME COLUMN Sarake_NAME FIRST_NAME;
Kysely:
ALTER TABLE Student RENAME Column name TO FIRST_NAME;Lähtö
LähtöEsimerkki 2: Nimeä taulukko uudelleen
Tässä esimerkissä haluamme nimetä taulukon uudelleenStudenttoStudent_DetailskäyttämälläALTER TABLEkomento tekee nimestä kuvaavamman ja olennainen sen sisällön kannalta.
Kysely:
ALTER TABLE Student RENAME TO Student_Details;Lähtö
Esimerkki 3: Lisää uusi sarake
Jos haluat lisätä uuden sarakkeen olemassa olevaan taulukkoon, meidän on ensin valittava taulukko ALTER TABLE -komennolla taulukon_nimi ja sitten kirjoitetaan uuden sarakkeen nimi ja sen tietotyyppi ADD sarakkeen_nimi tietotyyppi. Katsotaanpa alla ymmärtääksesi paremmin.
Syntaksi
ALTER TABLE taulukon_nimi
LISÄÄ sarakkeen_nimi tietotyyppi;taulukon pituus java
Kysely:
ALTER TABLE Student ADD marks INT;Lähtö
Esimerkissäphonesarake on päivitetty alkaenVARCHAR(20)toBIGINT tallentaa numeerista tietoa tehokkaammin ja varmistaa puhelinnumeroiden tietojen eheys ilman tarpeettomia merkkejä.
Syntaksi
ALTER TABLE taulukon_nimi
MODIFY COLUMN sarakkeen_nimi uusi_tietotyyppi;
Kysely:
ALTER TABLE Student_Details
MODIFY COLUMN phone BIGINT;
Lähtö
| id | nimi | ikä | sähköposti | puhelin |
|---|---|---|---|---|
| 1 | Mitä | 20 | [email protected] | 9999999999 |
| 2 | Rahul | 22 | [email protected] | 8888888888 |
| 3 | Priya | 21 | [email protected] | 7777777777 |
| 4 | Sonia | 23 | [email protected] | 6666666666 |
| 5 | Puhelu | 19 | [email protected] | 5555555555 |
Selitys :
- Puhelinsarakkeessa on nyt BIGINT-tietotyyppi, joka soveltuu suurten numeeristen arvojen tallentamiseen.
- Olemassa olevat tiedot säilyvät muuttumattomina, mutta ne tallennetaan kokonaislukuina merkkijonojen sijaan.
Muita ALTER-komennon käyttötapauksia
1. Sarakkeen poistaminen : Joissain tapauksissa saatamme joutua poistamaan sarakkeen. Voit tehdä tämän käyttämällä DROP COLUMN -syntaksia:
ALTER TABLE Student_Details
DROP COLUMN merkit;
Tämä komento poistaa merkit-sarakkeen kokonaan taulukosta
2. Sarakkeen oletusarvon muuttaminen : Voimme myös muokata sarakkeen oletusarvoa käyttämällä SET DEFAULT -lausetta:
ALTER TABLE Student_Details
ALTER COLUMN ikä SET OLETUS 18;
3. Taulukon tai sarakkeen nimeäminen uudelleen eri tietokantoissa : Huomaa, että SQL-syntaksi voi vaihdella eri tietokantajärjestelmissä. Näin nimeämme taulukon tai sarakkeen uudelleen MySQL MariaDB:ssä ja Oraakkeli :
- MySQL / MariaDB : Sarakkeen uudelleennimeämisen syntaksi on samanlainen, mutta sinun on myös käytettävä CHANGE COLUMN -komentoa sarakkeen nimeämiseen uudelleen:
ALTER TABLE Opiskelija
MUUTA SARAKE vanha_sarakkeen_nimi uusi_sarakkeen_nimi tietotyyppi;
zeenat aman näyttelijä
- Oraakkeli : Oracle tukee RENAME COLUMN -syntaksia, mutta vaatii erilaisen syntaksin taulukon uudelleennimeämiseen:
Luo tietokilpailuALTER TABLE Oppilaan UUDELLEENNIMEÄ SARAKE vanha_sarakkeen_nimi uuteen_sarakkeen_nimi;