bo’lsa, u holda boshqa foydalanuvchilarning ham jadvallariga qo’llashi mumkin.
Tasvirdan
ko’rish mumkinki, ALTER TABLE yuriqnomasi yordamida quyidagilarni amalga oshirish
mumkin:
Jadvalga aniqlangan ustun qo’shish mumkin;
Jadvaldan ustunni o’chirish mumkin;
Qandaydir ixtiyoriy ustun uchun, sukunat holat bo’yicha qiymat o’zgartirish mukin;
Jadvalga birlamchi kalitni qo’yish yoki olib tashlash mumkin;
Jadvalga tashqi kalitni qo’yish yoki
olib tashlash mumkin;
Nayoblik shartini qo’shish yoki olib tashlash mumkin;
Qiymatga qo’yilgan shartni qo’shish yoki olib tashlash mumkin;
SQL standarti talablariga ko’ra ALTER TABLE yuriqnomasini jadvalda birlik
o’zgarishga qo’llash lozim. Masalan: Ustunni qo’shish va yangi tashqi kalitni
aniqlash uchun
ikki har-xil yoriqnoma tuzish talab etiladi.
Ustunni qo’shish
Hammasidan ko’ra ALTER TABLE yoriqnomasi mavjud jadvalga ustun qo’shish uchun
islatiladi. ALTER TABLE yuriqnomasida ustunni aniqlash taklifi CREATE TABLE
yoriqnomasidagi ko’rinishga ega bo’lib, xuddi u bajargan funktsiyani bajaradi. Yangi
qo’shiladigan ustun jadval o’ng tomoni oxiridan qo’shiladi. Yangi qo’shilgan
ustunning barcha
satrlaridagi qiymat sukunat holatda NOT NULL sifatida e’lon qilinadi.
Quyida ALTER TABLE yuriqnomasini qo’llashga doir misollar keltiramiz:
1)
Talaba jadvaliga barcha talabalar uchun otasining familiyasi va telefon raqamini
bog’lanish uchun kiritish ustunlarini qo’shish lozim bo’lsin:
ALTER TABLE Talaba ADD AloqaOtasi VARCHAR(30);
ALTER TABLE Talaba ADD AloqaTelefon CHAR(13);
2)
Talaba jadvaliga barcha talabalarga qo’shimcha minimal ballarni kiritish uchun yangi
ustun qo’shish lozim bo’lsin:
ALTER TABLE Talaba ADD QoshimchaBall INTEGER NOT NULL DEFAULT 0;
Birinchi misolda, mavjud talabalar yangi ustunda NULL qiymatga ega bo’ladi. Ikkinchi
misolda yangi ustundagi satrlar tarkibida nol (0) paydo bo’ladi.
SQL da ALTER TABLE yoriqnomasi birinchi marta paydo bo’lganda, faqat ustun
qo’shishga mo’ljallangan, shuning uchun faqat ADD ko’rsatmasi ishlagan. Vaqt o’tishi
bilan
birlamchi va tashqi kalitlarni aniqlash, cheklovlarni qo’yish kabi ko’rsatmalar qo’shildi. SQL
standartini bir xillashtirish maqsadida ADD so’zidan keyin COLUMN so’zi qo’shiladigan bo’ldi,
maqsad ustun tuzilayotganini aniq tasvirlash uchun. Buni hisobga olgan holatda yuqorida
keltirilgan misolni quyidagicha o’zgartirish mumkin:
ALTER TABLE Talaba ADD COLUMN QoshimchaBall INTEGER NOT NULL DEFAULT 0;
Ustunlarni o’chirish
ALTER TABLE yuriqnomasi yordamida mavjud jadvalning kerak bo’lmaydigan bir yoki
bir necha ustunlarini o’chib tashlash mumkin. Masalan, Kitob jadvalidan [YoqolganSana]
ustunini o’chirish uchun:
ALTER
TABLE Kitob DROP YoqolganSana;
SQL standartida ko’rsatilishicha, ALTER TABLE yuriqnomasi yordamida faqat bitta
ustunni o’chir ko’rsatma berish lozim, lekin etakchi MBBT larida bunday cheklovlar yo’q.
Ma’lumotlar butunligini saqlash maqsadida bu ko’rsatmaga quyidagi parametrlardan
birini ham qo’shish mumkin:
CASCADE – o’chiriladagan ustunga bog’liq bo’lgan MB sining ixtiyoriy ob’ekt (tashqi
kalit, cheklovlar va boshqalar) ham birgalikda o’chiriladi.
RESTRICT - o’chiriladagan ustun MB sining ixtiyoriy ob’ekti bilanbog’liq bo’lsa, u
holda ustun o’chirilmaydi va ALTER TABLI yuriqnomasi xatolik to’g’risida ma’lumot
beradi.
CASCADE qonuni ko’chki o’zgarishlarga olib kelishi mumkin,
shuning uchun uni
qo’llashda extiyot bo’lish zarur. Yaxshisi RESTRICT qoidasidan foydalangan ma’qul.
Birlamchi va tashqi kalitni o’zgartirish
ALTER TABLE yuriqnomasining ya’na bir keng qo’llaniladigan ho;atlaridan biri bu –
jadvalga birlamchi va tashqi kalitlarni qo’shish yoki o’zgartirishdir. Bu ALTER TABLE
yuriqnomasining muxit foydali shakllaridan biridir.
Tashqi kalitni faqat tusulgan aloqaga nom berilgandagina bekor qilish imkoniyati mavjud
bo’ladi. Agarda aloqaga nom berilmagan bo’lsa, u holda ALTER TABLE yordamida bu ishni
bajarib bo’lmaydi. Bu holatda jadvalni o’chirb, keyin yangi formatda tuzish lozim bo’ladi.
Misol: Talaba jadvalining [Kurs] ustunini yangi tashkil
etilgan Kurs jadvali uchun
birlamchi kalitga aylantirsh zarur bo’lsa, u holda:
ALTER TABLE Talaba ADD CONSTRAINT INKURS FOREIGN KEY (Kurs) REFERENCES
Kurs;
Talaba jadvalining birlamchi kalitini o’zgartirish:
ALTER TABLE Talaba DROP CONSTRAINT KodTalaba;
ALTER TABLE Talaba DROP PRIMAY KEY;
Do'stlaringiz bilan baham: