Maydon qiymatlarini tekshirish (CHECK cheklovi)
CHECK cheklovi jadvalga kiritilayotgan ma‘lumot qabul qilinishidan oldin mos kelishi lozim bo‘lgan shart kiritishga imkon beradi. CHECK cheklovi CHECK kalit so‘zi ko‘rsatilgan maydondan foydalanuvchi shartli ifodadan iboratdir. Misol uchun Salepeople jadvali Comm ustuniga kiritilayotgan qiymat 1 dan kichik bo‘lsin.
CREATE TABLE Salepeople
( SNum integer NOT NULL PRIMARY KEY,
SName char(10) NOT NULL UNIQUE,
City char(10),
Comm decimal CHECK ( Comm < 1 ));
CHECK cheklovidan maydonga ma’lum qiymatlarini kiritishdan himoya qilib, xatolar oldini olish uchun foydalanish mumkin. Masalan, mahsulotni sotish shaxobchalariga ega bo‘lgan shaharlar faqat London, Barselona, San Xose va Nyu York bo‘lsin.
CREATE TABLE Salepeople
(SNum integer NOT NULL PRIMARY KEY,
SName char(10) NOT NULL UNIQUE,
City char(10) CHECK (City IN ('London','New York','San Jose', 'Barselona')), Comm decimal CHECK ( Comm < 1 ));
CHECK jadval cheklovi sifatida kelishi mumkin. Bu shartga bir necha maydon kiritishga imkon beradi. Masalan:
CREATE TABLE Salepeople
( SNum integer NOT NULL PRIMARY KEY,
SName char(10) NOT NULL UNIQUE,
City char(10),
Comm decimal,
CHECK (Somm < .15 OR City = 'Barcelona'));
Ko‘zda tutilgan qiymatlarni o‘rnatish
Biror bir maydon uchun qiymat ko‘rsatmagan holda jadvalga satr qo‘shilish kerak bo‘lsa, SQL bunday maydonga kiritish uchun ko‘zda tutilgan qiymatga ega bo‘lishi kerak, aks holda buyruq rad etiladi. Eng umumiy ko‘zda tutilgan qiymat NULL qiymatdir. CREATE TABLE buyrug‘ida ko‘zda tutilgan qiymat DEFAULT operatori orqali, ustun cheklovi sifatida ko‘rsatiladi. Masalan:
CREATE TABLE Salepeople
( SNum integer NOT NULL PRIMARY KEY,
SName char(10) NOT NULL UNIQUE,
City char(10) DEFAULT 'New York',
Comm decimal CHECK ( Comm < 1 ));
Maydonlar qiymatlarini kiritish, o‘chirish va o‘zgartirish
Jadvallarni o‘chirish. Faqat bo‘sh jadvalni o‘chirish mumkin. Jadvalni o‘chirish buyrug‘i quyidagi ko‘rinishga ega:
DROP TABLE ; Masalan: DROP TABLE Salepeople;
Jadvalni yaratilgandan so‘ng o‘zgartirish. Jadvalni o‘zgartirish uchun ALTER TABLE buyrug‘idan foydalaniladi. Bu buyruqda jadvalga yangi ustunlar qo‘shish, ustunlarni o‘chirish, ustunlar kattaligini o‘zgartirish, hamda cheklovlarni qo‘shish va olib tashlash imkoniyatlariga ega.
Jadvalga ustun qo‘shish buyrug‘i:
ALTER TABLE ADD
;
Masalan:
ALTER TABLE Salepeople ADD Phone CHAR(7);
Qiymatlarni kiritish. Hamma satrlar SQLda INSERT buyrug‘i yordamida kiritiladi. INSERT quyidagi formatga ega:
INSERT INTO
[(column [,column] ...)]
VALUES ( [,] ... );
Masalan, sotuvchilar jadvaliga yangi satr kiritish uchun quyidagi buyruqdan foydalanish mumkin:
INSERT INTO Salepeople VALUES (11, 'Peel', 'London', .12);
Ustun nomlarini ko‘rsatish ham mumkin, masalan:
INSERT INTO Salepeople (Sname, Comm, SNum)
VALUES ('Peel', .12, 11);
Bu yerda e’tibor berilsa City ustuni tashlab yuborilgan, chunki unga ko‘zda tutilgan qiymat kiritiladi.
Satrlarni o‘chirish. Satrlarni jadvaldan DELETE buyrug‘i bilan o‘chirish mumkin. U alohida qiymatlarni emas faqat satrlarni o‘chiradi. DELETE quyidagi formatga ega:
DELETE FROM
[WHERE search-condition];
Masalan, sotuvchilar jadvalidagi hamma satrlarni o‘chirish uchun, quyidagi shartni kiritish mumkin: DELETE FROM Salepeople;
Ma’lum satrlarni o‘chirish uchun shartlardan foydalaniladi. Masalan, jadvaldan Axelrod sotuvchini o‘chirish uchun uning nomerini shartda berish kerak:
DELETE FROM Salepeople WHERE SNum = 13;
Maydon qiymatlarini o‘zgartirish. O‘zgartirish UPDATE buyrug‘i yordamida bajariladi. Bu buyruqda UPDATE ifodasidan so‘ng jadval nomi va SET ifodasidan so‘ng ma’lum ustun uchun o‘zgartirish ko‘rsatiladi. UPDATE ikki formatga ega. Ulardan birinchisi:
UPDATE
SET column = expression [, column = expression] ...
[WHERE search-condition]
bu yerda expression - bu ustun | ifoda | konstanta | o‘zgaruvchi.
Ikkinchi variant:
UPDATE
SET column = expression, ...
[ FROM table-list ]
[ WHERE search-condition ]
Masalan, hamma buyurtmachilar bahosini 200 ga o‘zgartirish mumkin:
UPDATE Customers SET Rating = 200;
Ma’lum satrlarni o‘zgartirish uchun DELETE dagi kabi shartlardan foydalanish kerak. Masalan, Peel (SNum=11) sotuvchining hamma buyurtmachilari uchun bir xil o‘zgartirish quyidagicha kiritiladi:
UPDATE Customers SET Rating = 200 WHERE SNum = 11;
SET vergul bilan ajratilgan ixtiyoriy sondagi ustunlarga qiymat tayinlashi mumkin. Masalan:
UPDATE Salepeople SET SName ='Gibson', City='Boston', Comm=.10
WHERE SNum = 14;
UPDATE buyrug‘ining SET jumlasida ifodalarni ham ishlatish mumkin. Masalan: UPDATE Salepeople SET Comm = Comm * 2;
|