15-mavzu. Sqlda Alter instruksiyasi. Jadvalga maydonlarni qo’shish. Maydonlarning turini o’zgartirish. Kalitni qo’shish. Atributlarni ma’lumotni yo’qotmay o’zgartirish. Jadvaldan ustunlarni o’chirish. Reja



Download 0,63 Mb.
Pdf ko'rish
bet1/4
Sana28.04.2022
Hajmi0,63 Mb.
#587923
  1   2   3   4
Bog'liq
15-maruza



15-mavzu. SQLda Alter instruksiyasi. Jadvalga maydonlarni 
qo’shish. Maydonlarning turini o’zgartirish. Kalitni 
qo’shish.Atributlarni ma’lumotni yo’qotmay o’zgartirish. 
Jadvaldan ustunlarni o’chirish. 
Reja: 
1)
Jadvalga maydonlarni qo’shish. 
2)
Maydonlarning turini o’zgartirish.
3)
Kalit qo’shish.
4)
Atributlarni ma’lumotlarni yo’qotmay o’zgartirish.
5)
Jadval ustunlarini o’chirish. 
Ma’lumotlarni aniqlash tili 
SELECT, INSERT, DELETE, UPDATE va boshqa qaralgan yo’riqnomalar 
ma’lumotlarni qayta ishlash uchundir. Bu yo’riqnomalarning to’plami ma’lumotlarni qayta 
ishlash tili yoki DML (Data Manipulation Language) deb yuritiladi. DML yo’riqnomalari MB 
saqlanadigan axborotlarni o’zgartirish (modifikatsiyalash) uchundir, lekin bular strukturani 
o’zgartira olmaydi. Masalan: oldin qaralgan hach bir yo’riqnomalar jadvalni yoki ustunni tuzish 
yoki o’chirish imkoniyatini bermaydi. 
MB strukturasini o’zgartirish uchun SQL ning boshqa yo’riqnomalar to’plami mavjud va 
ular ma’lumotlarni aniqlash tili yoki DDL (Data Definition Language) deb yuritiladi. DDL 
yo’riqnomalari yordamida quyidagi ishlarni bajarsa bo’ladi: 

Yangi jadval strukturasini aniqlash va uni tuzish

Kerak bo’lmaydigan jadvallarni o’chirish; 

Mavjud jadvallar aniqlanishini o’zgartirish; 

MB xavfsizligini na’minlash; 

Jadvallardagi ma’lumotlarni tezroq olish uchun indekslar hosil qilish; 

Ma’lumotlarning fizik joylashuvini boshqaris. 
Ma’lumotlani aniqlash tilining yadrosini quyidagi uch buyruq tashkil etadi: 

CREATE (tuzish) – MB ob’ektini aniqlash va tuzish imkoniyatini beradi; 

DROP (o’chirish) - MB ning mavjud ob’ektlarni olib tashlash (o’chirishni) imkonini 
beradi; 

ALTER (o’zgartirish) – bu orqali MB ob’ektining aniqlanishi o’zgartirish mumkin. 
Jadval tuzish 
MB sida axborotlarni saqlash uchun, oldin uning strukturasini aniqlash lozim. Aytaylik 
Talaba o’quv bazasiga qo’shimcha ma’lumotlar kiritish zarur bo’lsin. Masalan, Kitoblar haqida: 
Har bir kitob uchun quyidagi ma’lumotlar saqlash zarur bo’lsin: 

Kitob ishlab chiqaruvchini aniqlovchi kodi – uchta simvoldan iborat

Kitobni aniqlovchi kod – besh simvol; 

Tavsiflash – o’ttiz simvolgacha; 

Kitob narxi; 

Kitob soni. 
CREATE TABLE yo’riqnomasi yangi jadvalni aniqlaydi. Demak kitob haqidagi ma’lumotlarni 
saqlash uchun struktura hosil qilishga SQL buyrug’ini bajartirish lozim: 
CREATE TABLE
Kitob (Kod_ICh CHAR(3),


Kod_Kitob CHAR(5),
Tavsiflash VARCHAR(30),
Narxi NUMERIC(9,2),
Soni INTEGER); 
MB ga jadvallar CREATE TABLE xizmatchi so’zi yordamida qo’shiladi. Bu buyruq 
bo’sh jadval hosil qiladi, ya’ni u hosil qilgan jadvalda birorta ham satr bo’lmaydi. Jadvalga 
qiymatlar INSERT buyrug’i yordamida kiritiladi. CREATE TABLE buyrug’I jadval nomi va 
ko’rsatilgan tartibda ustunlarni aniqlaydi. Har bor ustun qabul qiladigan qiymatning tipi va 
o’lchami ko’rsatilishi lozim. Har bir tuziladigan jadval eng kamida bitta ustunga eha bo’lishi 
lozim. CREATE TABLE buyrug’ining qisqartirilgan ko’rinishi quyidagicha: 
CREATE TABLE  
(  [()], …); 
Quyidagi so’rov Talaba1 nomili jadvalni hosil qiladi: 
CREATE TABLE Talaba1 
(KodTalaba INTEGER, 
Familiyasi CHAR(20), 
Ismi CHAR(15), 
Stipendiya DOUBLE, 
Kurs INTEGER, 
Shahar VANCHAR, 
SanaT DATE); 
CREATE TABLE buyrug’ining umumiy ko’rinishi: 
Ustunni aniqlash: 
Jadval cheklovlarini aniqlash: 
CONSTRAINT – cheklovlar qo’yish imkoniyatini beradi. Ba’zi MBBT larida bu xizmatchi so’z 
o’rniga CASCADE yoki RESTRICT xizmatchi so’zlari ham qo’llanilishi ham mumkin. 
Umuman olganda MBBT lari tipiga qarab qo’llaniladi. 
DEFERRABLE – tekshirivni kechiktirish, tranzaktsiya oxirigacha qoldirilishi mumkin. Masalan, 
yangi kitob haqida ma’lumotlarni barchasini kiritguncha kutushi lozim. 
NOT DEFERRABLE – birdan tekshirish, kechiktirmasdan. Masalan: ustun qiymatlariga 
qo’yiladigan cheklovlae: noyobligi, birlamchi kalitligi va boshqalar.


INITIALLY IMMEDIATE – noyobligigi (UNIQUE) va qiymatiga (CHECK) cheklov. Bu har 
bir operatordan so’ng bajariladi. 
INITIALLY DEFERRED - noyobligigi (UNIQUE) va qiymatiga (CHECK) cheklov. Bu 
tranzaktsiya oxirida bajariladi. 
BIrlamchi kalitga cheklov: 
Tashqi kalitga cheklov: 
REFERENCES – ustun qiymatlaringa qo’yilgan cheklovlarni va tashqi kalitni aniqlaydi. 
MATCH FULL – to’liq ustma-ust tushushini tekshiradi. 
MATCH PARTIAL – qisman ustma-ust tushushini tekshiradi. 
ON DELETE – tashqi kalitni o’chirishdagi xarakat.
ON UPDATE – tashqi kalitni ozgartirishdagi xarakat. 
ON DELETE va ON UPDATE quyidagi frazlardan birini olishi mumkin: 
CASCADE – tashqi kaliti bor asosiy satrlarni o’chirganda, unga bog’langan tag 
jadvallardan ham
avtomatik o’chiradi yoki o’zgartirilsa – o’zgartiradi. 
SET NULL – tasqi kaliti bor asosiy satrlarni o’chirganda, unga bog’langan tag 
jadvallardagi barcha
tashqi kalitlar qiymatini NULL ga almashtiriladi. 
SET DEFAULT - tasqi kaliti bor asosiy satrlarni o’chirganda, unga bog’langan tag 
jadvallardagi
barcha tashqi kalitlar qiymati aniq qiymatga almashtiriladi. Sukunat 
holatida
berlgan ustun qiymatiga. 
NO ACTION – hech qanday xarakat bajarilmaydi. 
Noyobligiga cheklov: 
Qiymatga cheklov: 


DOMEN xizmatchi so’zidan foydalanib qiymatlarga qo’shimcha cheklovlar kiritish mumkin
ya’ni bu berilgan cheklov ustunning har-bir qiymatini mos kelish-kelmasligiga tekshiradi. 
Masalan: 
CREATE DOMAIN Cheklov_Ta_Kod INTEGER 
CHEK (VALUE BETWEEN 11 AND 99); 
U holda Talaba jadvali va uning ustunlarini aniqlash uchun: 
CREATE TABLE Talaba 
(Ta Cheklov_Ta_Kod
NOT NULL, 
Shahar VARCHAR(15)
NOT NULL, 
GURUH VARCHAR(10)
NOT NULL, 
KUSR INTEGER, 
Oraliq DECIMAL(9,2), 
Ball DECIMAL(9,2) NOT NULL); 
SQL standarti ko’pgina relyatsion MBBT kabi sukunat holatda qiymat berish 
imkoniyatlari ham mavjud. Masalan, yuqorida qaralgan masalani o’zgartiramiz: 
CREATE TABLE Talaba 
(Ta INTEGER
NOT NULL, 
Shahar VARCHAR(15)
NOT NULL, 
GURUH VARCHAR(10)
NOT NULL DEFAULT ’018-335’, 
KUSR INTEGER 
DEFAULT 4, 
Oraliq DECIMAL(9,2) 
DEFAULT NULL, 
Ball DECIMAL(9,2) NOT NULL DEFAULT 0.00); 
Jadvalni o’chirish 
Vaqt o’tishi bilan MB strukturasi o’zgaradi. Yangi ob’ektlarni tasvirlash uchun yangi 
jadvalar tuziladi, ba’zi bir eski jadvallar o’z kuchini yo’qotadi, ya’ni kerak bo’lmay qoladi. Bu 
kerak bo’lmay qolgan jadvallarni DROP TABLE yo’riqnomasi yordamida o’chirish mumkin. 
Uning umumiy ko’rinishi: 
CREATE TABLE ThisTable (FirstName CHAR, LastName CHAR); 
CREATE TABLE Customers (CustId INTEGER PRIMARY KEY, CLstNm VARCHAR(50)) 
CREATE TABLE MyTable (FirstName CHAR, LastName CHAR, DateOfBirth DATETIME, 
CONSTRAINT MyTableConstraint UNIQUE (FirstName, LastName, DateOfBirth)); 

Download 0,63 Mb.

Do'stlaringiz bilan baham:
  1   2   3   4




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©www.hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish