Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Doc / BD_wpor.doc
Скачиваний:
42
Добавлен:
24.03.2015
Размер:
293.89 Кб
Скачать

6. Атрибуттардың функционалдық, транзитивтік тәуелділігі.

R қатынасының В атрибуттар тобының сол қатынастағы А атрибуттар тобынан функционалдық тәуелділігі дегеніміз R.A -> R.B немесе А -> В R[A] және R[B] проекцияларының арасындағы әрбір уақыт кезеңінде R[A] проекциясының кез келген элементіне R[B] проекциясының тек бір ғана элементі сәйкес келетіндей қатынасы.

Егер В атрибуттар тобы А-дан функционалды тәуелді болса, бірақ А-ның кез келген бағыныңқы жиынынан тәуелсіз болса, онда R.A -> R.B функционалдық тәуелділігі толық деп аталады, яғни R.A -> R.B толық деп аталады, егер: кез келген А-дан алынған А1 үшін => R.A -/-> R.B: A-ның бағыныңқы жиыны болып табылатын кез келген А1 үшін R.B R.A-дан функционалды тәуелсіз, кері жағдайда R.A -> R.B тәуелділігі толық емес деп аталады.

R.A -> R.B функционалдық тәуелділігі транзитивті деп аталады, егер келесі шарттарды қанағаттандыратын С атрибуттар тобы бар болатын болса:

1. С атрибуттар тобы А–ның бағыныңқы жиыны емес.

2. С атрибуттар тобына В кірмейді.

3. R.A -> R.C функционалды тәуелді.

4. R.C -> R.A арасында функционалдық тәуелділік жоқ.

5. R.C -> R.B функционалды тәуелді.

Өзара тәуелсіз атрибуттар дегеніміз — бір-бірінен функционалды тәуелді болмайтын атрибуттар. Егер бір қатынаста бірнеше функционалдық тәуелділік болатын болса, әрбір атрибут немесе атрибуттар тобынан басқа қандай да бір атрибут тәуелді болатын болса, онда оны қатынастың детерминанты деп атайды.

Кейбір тәуелділіктер басқаларынан Армстронгтің аксиомалары деп аталатын ережелердің көмегімен алынуы мүмкін. Олар келесі үш аксиомалар:

1. Рефлексивтілік: егер В А-ның бағыныңқы жиыны болса, онда А->В

2. Қосымша: егер. А->В , онда АС->ВС

3. Транзитивтілік: егер А->В және В->С , онда А->С.

Берілген бастапқы функционалдық тәуелділіктердің тобынан алынған барлық мүмкін функционалдық тәуелділіктердің жиынын оның тұйықталуы деп аталады. Егер әрбір баған мен әрбір жолдың қиылысуында тек атрибуттардың элементарлы мәндері орналасқан болса, қатынас сонда ғана бірінші нормаланған формада болады.

7. Sql-сұраныстар тілі. Тілдің негізгі өрнектерін сұраныстар құруға қолдану.

SQL (Structure Query Language) – сұранымдардың құрылымдық тілі. Осы тіл кестеде сақталынатын байланысқан ақпараттар жиыны болатын мәліметтердің реляциялық қорын құруға және жұмыс жасауға мүмкіндік береді.

Компьютерлік технологияға тәуелсіз болғандықтан және реляциялық МҚ-ң технологиясынын аумағындағы көшбасшыларының қолдауымен SQL тілі негізгі стандартты тілі болады. Сондықтан, кезкелген мәліметтер қорымен жұмыс істегісі келген адам SQL тілін білуі қажет. SQL стандарты ANSI-мен анықталынған және қазіргі уақытта ISO (стандарттау бойынша халықаралық ұйым) қабылданған.

SQL тілінің құрамы. SQL тілі реляциялық мәліметтер қорында мәліметтермен қүрделі әрекеттер орындауға, мәліметтер қорының құрылымын анықтауға және көпшілік қолданатын ортадағы мәліметтерге кіру құқығымен басқаруға арналған.

Сондықтан, SQL тіліне құрамдық бөлімі ретінде:

1)мәліметтермен күрделі әрекеттер тілі (Data Manipulation Language, DML)-мәліметтер қорында мәліметтермен күрделі әрекеттер орындауға қолданылады. Ол 4 негізгі бұйрықтардан тұрады: SELECT(таңдау), INSERT(енгізу), UPDATE(жаңарту), DELETE (жою).

2)мәліметтерді анықтау тілі (Data Definition Language, DDL). Негізгі бұйрықтары: CREAT DATABASE(мәліметтер қорын құру), CREAT TABLE(кестені құру), ALTER DATABASE(мәліметтер қорын өзгерту), ALTER TABLE(кестені өзгерту), DROP DATABASE(мәліметтер қорын жою), DROP TABLE(кестені жою),т.б.

3)мәліметтерді басқару тілі (Data Control Language, DCL) қарастырылған.Ол негізгі екі бұйрықтан тұрады: GRANT(құқық беру), REVOKE(құқықты қайтарып алу).

SQL де операциялар көбінесе WHERE кілттік сөздің өрнектерінде қолданылады. SQL операторларында операциялар белгісі шарттарды беру және бірнеше шарттарды бір бірімен байланастыру үшін қолданылады.

Операциялардың келесі типтерін қарастырамыз:

• салыстыру операциялар

• логикалық операциялар

• терістеу операция

• арифметикалық операциялар

Салыстыру операциялары Салыстыру операциялар SQL операторларында жеке мәндерді салыстыру үшін қолданылады және =, <>, < және> белгілермен көрсетіледі.

Мысал________________________________Мәні______

WHERE Kol_vo = '20000' Саны (данасы) тең 20000

Логикалық операциялар

SQL тілінде логикалық операциялық кілттік сөздермен беріледі. Төменде келесі логикалық операциялар қарастырылады.

• IS NULL

. EXISTS

• BETWEEN

• UNIQUE

• IN

• ALL және ANY

• LIKE

IS NULL

is NULL кілттік сөзі берілген мәні NULL мәніне теңдігін тексеруге қолданылады.

Мысалы, егер қай қызметкерлерде пейджер жоқ екенің білу керек болса,

EMPLOYEE_TBL кестесінде NULL мәнін PAGER бағанында іздеу керек.

1) Мысал__________________________Мағынасы_____________

WHERE SALARY is NULL Енбек ақысының мәні көрсетілмеген

2) Келесі мысалда NULL мәні табылмайды Терістеу операция арқылы шартты терістеу. Жоғарыда қарастырылған операциялардың барлық типтері үшін олардың терістеуін құруға болады, сонымен қарама қарсы шартты қарастыруға болатындай.

NOT кілттік сөзі келесі операциялармен қолданылады:

• NOT BETWEEN

• IS NOT NULL

• NOT IN

• NOT EXISTS

• NOT LIKE

• NOT UNIIQUE

Осы мүмкіндіктерді келесі бөлімдерде қарастырамыз.

NOT BETWEEN

BETWEEN терістеу операциясы келсі түрде қолданылады:

1) Мысал_____________________Мағынасы___________________

WHERE SALARY NOT BETWEEN Еңбек ақысы 20000 мен 30000 мәндердің

аралықтарында '20000' AND '30000' болмау керек

Арифметикалық операциялар

SQL тілінде арифметикалық операциялар басқа тілдеріндей қолданылады Ондай операциялар төртеу:

• + (қосу);

• * (көбейту);

• - (алу);

• / (бөлу).

ҚОСУ

Қосу "+" бнлгісімен көрсетіледі.

Мысал_____________________________Мағынасы__________________

1) SELECT SALARY + BONUS SALARY мәні мәнімен қосылады әр жолдыі

мәндері FROM EMPLOYEE_PAY_TBL; бойынша

2) SELECT SALARY FROM EMPLOYEE_PAY_TBL SALARY мен BONUS

қосындысы

WHERE SALARY + BONUS > '40000'; 40000 асатын жолдарды табу

Соседние файлы в папке Doc