Junior
Kuidas muuta tabeli struktuuri relatsioonilises andmebaasis?
sobes.tech AI
Vastus AI-lt
Seotud andmebaasi tabeli struktuuri saab muuta kasutades SQL käske ALTER TABLE.
Põhitegevused:
- Veergu lisamine
- Veergu kustutamine
- Veeru andmetüübi muutmine
- Piirangute lisamine/eemaldamine (PRIMARY KEY, FOREIGN KEY, UNIQUE, NOT NULL, CHECK, DEFAULT)
- Tabeli nime muutmine
- Veeru nime muutmine
ALTER TABLE käskude näited:
-- Lisada veerg 'email' VARCHAR(255) tüübiga ja NOT NULL piiranguga tabelisse 'users'
ALTER TABLE users
ADD COLUMN email VARCHAR(255) NOT NULL;
-- Kustutada veerg 'phone' tabelist 'users'
ALTER TABLE users
DROP COLUMN phone;
-- Muuta veeru 'age' andmetüüpi INTEGER-ks tabelis 'users'
ALTER TABLE users
ALTER COLUMN age TYPE INTEGER;
-- Lisada veerule 'username' UNIKALNE piirang tabelis 'users'
ALTER TABLE users
ADD CONSTRAINT unique_username UNIQUE (username);
-- Kustutada väline võti 'fk_user_group' tabelist 'user_groups'
ALTER TABLE user_groups
DROP CONSTRAINT fk_user_group;
-- Tabeli 'customers' ümbernimetamine 'clients'-ks
ALTER TABLE customers
RENAME TO clients;
-- Veeru 'first_name' ümbernimetamine 'given_name'-ks tabelis 'users' (süntaks võib erineda)
ALTER TABLE users
RENAME COLUMN first_name TO given_name;
Oluline märkused:
- Andmete olemasolu: andmetüübi muutmine või veeru kustutamine võib põhjustada andmete kaotsimineku või ebatäpsuse.
- Sõltuvused: veeru kustutamine või piirangu muutmine võib häirida seotud tabelite tööd (näiteks välisvõtmete tõttu).
- Tõhusus: keerulised
ALTER TABLEoperatsioonid suurtes tabelites võivad olla ressursimahukad ja blokeerida tabeli kasutamise ajaks.
Soovitatav on teha selliseid muudatusi testkeskkonnas ning luua andmete varukoopiaid.