Komissiya kasr,
CHECK (Komissiya <0,15 YOKI Shahar = 'Barselona'));
sql kodini ishga tushiring . Ma'lumotlar bazasini yangilang va yaratilgan jadvalni ko'ring.
Nomi ostida SQL so'rov saqlash Example9.sql yilda Student_name / Lab4 papkaga .
Ko'rib turganingizdek, predikatning to'g'ri yoki noto'g'ri ekanligini aniqlash uchun ikki xil maydonni tekshirish kerak . Shuni yodda tutingki, bu bir qatordagi ikki xil maydon. Bir nechta maydonlardan foydalanishingiz mumkin bo'lsa-da, SQL bir vaqtning o'zida bir nechta qatorlarni tekshira olmaydi. Siz , masalan, foydalanish mumkin emas , narxlarning chegarasi ishonch hosil qilish uchun berilgan shahrida barcha komissiyalari bir xil deb. Buning uchun SQL har safar satrni o'zgartirganda yoki qo'shganda jadvalning boshqa qatorlariga qarashi va komissiya joriy shahar uchun ekanligini ko'rishi kerak. SQL buni qanday qilishni bilmaydi.
Aslida, agar siz turli shaharlarda komissiyalar qanday bo'lishi kerakligini oldindan bilsangiz , yuqoridagilar uchun kompleks CHECK cheklovidan foydalanishingiz mumkin .
9-misoldagi chegarani mustaqil ravishda o'zgartiring:
Londana
Agar komissiya 0,14 bo'lsa, unda faqat sotuvchi
Barselonadan
Agar komissiya 0,13 bo'lsa, unda faqat sotuvchi
San-Xose
Siz fikrni oldingiz. Bunday cheklovlar majmuasini qo'yish o'rniga , o'z predikatida ushbu shartlarning barchasiga ega bo'lgan WITH CHECK OPTION bandidan foydalanishingiz mumkin . Foydalanuvchilar jadval o'rniga jadval ko'rinishiga kirishlari mumkin . Buning afzalliklaridan biri shundaki , cheklovni o'zgartirish tartibi unchalik og'riqli yoki vaqt talab qilmaydi. Bilan nazorat OPTION view uchun yaxshi zaxira bo'lib , narxlarning cheklanganligi .
Dostları ilə paylaş: |