Кестенің бағандарына салынған шектеулер CHECK ережесі (<баған
шарты>) арқылы анықталады, оның жалпы форматы тӛменде берілген:
<баған шарттары>::= {
VALUE<оператор>< мәні>
|VALUE [NOT] BETWEEN <мән1 >AND <мән 2 >
|VALUE [NOT] LIKE <мән>[ESCAPE <мән>] |VALUE [NOT] IN
(<мән1>[, <мән2>...]
| VALUE IS [NOT] NULL |VALUE [NOT] CONTAINING<мән>
|VALUE [NOT] STARTING [WITH] <мән>
}
Бҧл жағдайда бағаның мәні
бойынша шектеулер домен
анықтамасындағылармен бірдей форматта сипатталады:
<оператор> = { = | < | > | <= | >= | !< | !> | <> | != };
VALUE<оператор><мәні> — домен мәні <оператор> арқылы
анықталған қатынастарда <мәні> параметрінде орналасқан;
BETWEEN<мән1>AND<мән2> —
Домен мәні арасында болуы
керек <мән1> және <мән2> қоса алғанда;
LIKE<мән1>[ESCAPE<мән2>] — кез келген ҧзындықтың кез
келген мәнін кӛрсететін «%» белгісімен ҧқсастық ҥлгісін анықтайды
және «_» таңбасы кез келген жалғыз таңба болып табылады. ESCAPE
LIKE операторында қалыпты таңбалар ретінде «%» және «_»
таңбалары болса, пайдаланылады. Бҧл жағдайда <мән 2>
таңбасын
таңдаңыз, содан кейін қызметтік нышандар ерекше кҥйін жоғалтады
және әдеттегідей іздеу жолын енгізеді. Мысалы, CHECK (VALUELIKE
«%!%» ESCAPE «!») - кез келген «!» Символы «%» дегенмен
аяқталады;
IN (<1 мән> [<мән 2> ...] - домендік
мәні аталған параметрлердің
бірімен сәйкес келуі тиіс;
IS [NOT] NULL бағанында бос емес басқа мән болуы керек;
<Мәні> қҧрамы - домен мәні <мәні> кіруін қамтуы тиіс,
қандай
орын жоқ мәселені;
STARTING [WITH] <мән> - домен мәні «мән» параметрінен
басталуы керек».
241
Доменнің мәні сәйкес келетін шарттар жиынтығы мҥмкін. Бҧл
жағдайда жеке шарттарға AND немесе OR операторы қосылған.
Кестелерді жасағаннан кейін,
дерекқордағы бар кестелерді
сипаттау (бағандардың сипаттамалары, олардың тәртібі, әртҥрлі
кілттердің болуы немесе CHECK шектеулері) ӛзгеруі мҥмкін.
Жоғарыда келтірілген мысалдарды келтірейік.
DEPARTMENTS кестесін Номер және Атау ӛрістерімен анықтаңыз:
CREATE TABLE ОТДЕЛЫ (НомерINTEGER
NOT NULL,
Атауы VARCHAR(20))
Бӛлімдер кестесінің ӛрісін Номер, Номер және ӛріс нӛмірі ҥшін
бастапқы кілтімен анықтаңыз:
CREATE TABLE БӚЛІМДЕР
(НӛмірINTEGER NOT NULL PRIMARY KEY,
Атауы VARCHAR(20))
Сол кесте, бірақ екі ӛрістегі бастапқы кілтпен (кесте
деңгейінде
шектеулерді анықтау):
CREATE TABLE БӚЛІМДЕР (Нӛмір
INTEGER NOT NULL,
Атауы VARCHAR(20) NOTNULL,
PRIMARYKEY(Нӛмір, Атауы)
Енді домендік кестеде пайдалану мысалын келтіреміз. Доменді
жасау Домен _ Нӛмір мәні бар бҥтін тҥрге ие сан 100-ден кӛп немесе
тең:
CREATE DOMAIN Домен_НомерAS INTEGER CHECK (VA-
LUE>=100);
ҚЫЗМЕТКЕРЛЕР кестесінің анықтамасында НӚМІР ӛрісі
ДОМЕН_ НӚМІР доменімен байланысады:
CREATETABLEҚЫЗМЕТКЕРЛЕР (Номер Домен_Номер
NOTNULL,
ФИОVARCHAR(20),
PRIMARY KEY (Номер))
Екі кесте жасайық. Негізгі кесте Ӛрістермен ӛнімдер ТАУАРЛАР
және баға, сондай-ақ ӛріс элементі бойынша бастапқы кілтпен:
CREATE
TABLE ТАУАРЛАР
1>
Достарыңызбен бөлісу: