Учебное пособие Санкт-Петербург «бхв-петербург»



Download 1,88 Mb.
Pdf ko'rish
bet106/256
Sana21.02.2022
Hajmi1,88 Mb.
#24505
TuriУчебное пособие
1   ...   102   103   104   105   106   107   108   109   ...   256
Bog'liq
morgunov e p postgresql osnovy yazyka sql

DROP TABLE students;
CREATE TABLE students ...
2. Посмотрите, какие ограничения уже наложены на атрибуты таблицы «Успевае-
мость» (progress). Воспользуйтесь командой \d утилиты psql. А теперь пред-
ложите для этой таблицы ограничение уровня таблицы.
В качестве примера рассмотрим такой вариант. Добавьте в таблицу progress
еще один атрибут — «Форма проверки знаний» (test_form), который может
принимать только два значения: «экзамен» или «зачет». Тогда набор допусти-
мых значений атрибута «Оценка» (mark) будет зависеть от того, экзамен или за-
чет предусмотрены по данной дисциплине. Если предусмотрен экзамен, тогда
допускаются значения 3, 4, 5, если зачет — тогда 0 (не зачтено) или 1 (зачтено).
134


Контрольные вопросы и задания
Не забудьте, что значения NULL для атрибутов test_form и mark не допуска-
ются.
Новое ограничение может быть таким:
ALTER TABLE progress
ADD CHECK (
( test_form = 'экзамен' AND mark IN ( 3, 4, 5 ) )
OR
( test_form = 'зачет' AND mark IN ( 0, 1 ) )
);
Проверьте, как будет работать новое ограничение в модифицированной таб-
лице progress. Для этого выполните команды INSERT, как удовлетворяющие
ограничению, так и нарушающие его.
В таблице уже было ограничение на допустимые значения атрибута mark. Как
вы думаете, не будет ли оно конфликтовать с новым ограничением? Проверьте
эту гипотезу. Если ограничения конфликтуют, тогда удалите старое ограниче-
ние и снова попробуйте добавить строки в таблицу.
Подумайте, какое еще ограничение уровня таблицы можно предложить для
этой таблицы?
3.* В определении таблицы «Успеваемость» (progress) на атрибуты term и mark
наложены как ограничения CHECK, так и ограничение NOT NULL. Возникает во-
прос: не является ли ограничение NOT NULL избыточным? Ведь в ограничении
CHECK явно указаны допустимые значения.
Проверьте гипотезу об избыточности ограничения NOT NULL в данном случае.
Для этого модифицируйте таблицу, убрав ограничение NOT NULL, и попробуйте
добавить в нее строку с отсутствующим значением атрибута term (или mark).
4. В определении таблицы «Успеваемость» (progress) для атрибута mark не толь-
ко задано ограничение CHECK, но и установлено значение по умолчанию с по-
мощью ключевого слова DEFAULT:

Download 1,88 Mb.

Do'stlaringiz bilan baham:
1   ...   102   103   104   105   106   107   108   109   ...   256




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©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