Junior
Ինչպես փոխել ռելացիոն տվյալների բազայի աղյուսակի կառուցվածքը?
sobes.tech AI
Պատասխան AI-ից
Հարաբերական տվյալների բազայի աղյուսակի կառուցվածքը փոխվում է SQL հրամանների ALTER TABLE միջոցով:
Հիմնական գործողություններ՝
- Սյունակ ավելացնել
- Սյունակ հեռացնել
- Սյունակի տվյալների տիպը փոխել
- Հատկություններ ավելացնել/հեռացնել (PRIMARY KEY, FOREIGN KEY, UNIQUE, NOT NULL, CHECK, DEFAULT)
- Աղյուսակի անունը փոխել
- Սյունակի անունը փոխել
ALTER TABLE հրամանների օրինակներ՝
-- 'users' աղյուսակին ավելացնել 'email' սյունակ VARCHAR(255) տիպով և NOT NULL սահմանափակմամբ
ALTER TABLE users
ADD COLUMN email VARCHAR(255) NOT NULL;
-- Հեռացնել 'phone' սյունակը 'users' աղյուսակից
ALTER TABLE users
DROP COLUMN phone;
-- Փոխել 'age' սյունակի տվյալների տիպը 'users' աղյուսակում՝ INTEGER
ALTER TABLE users
ALTER COLUMN age TYPE INTEGER;
-- Ավելացնել UNIQUE սահմանափակումը 'username' սյունակին 'users' աղյուսակում
ALTER TABLE users
ADD CONSTRAINT unique_username UNIQUE (username);
-- Հեռացնել 'fk_user_group' անունով Foreign Key սահմանափակումը 'user_groups' աղյուսակից
ALTER TABLE user_groups
DROP CONSTRAINT fk_user_group;
-- Աղյուսակի անունը փոխել 'customers'-ից՝ 'clients'
ALTER TABLE customers
RENAME TO clients;
-- Սյունակի անունը փոխել 'first_name'-ից՝ 'given_name'՝ 'users' աղյուսակում (սինտաքսը կարող է տարբեր լինել)
ALTER TABLE users
RENAME COLUMN first_name TO given_name;
Կարևոր է՝
- Տվյալների առկայությունը աղյուսակում՝ տվյալների տիպը փոխել կամ սյունակ հեռացնելը կարող է հանգեցնել տվյալների կորուստի կամ սխալ տվյալների:
- Զբաղվածություններ՝ սյունակ հեռացնելը կամ սահմանափակումներ փոխելն ազդել կարող է կապված աղյուսակների աշխատանքի վրա (օրինակ՝ արտաքին բանալիների պատճառով):
- Գործողության արդյունավետությունը՝ մեծ աղյուսակների վրա
ALTER TABLEբարդ գործողությունները կարող են ռեսուրսներ պահանջել և ժամանակավորապես փակել աղյուսակին մուտքը:
Նշվում է, որ նման փոփոխությունները խորհուրդ է տրվում կատարել փորձնական միջավայրում՝ նախքան արտադրական միջավայրում կիրառելը և տվյալների բեմական պատճեններ ստեղծել։