SQL курсовая работа

Автор работы: Пользователь скрыл имя, 26 Февраля 2013 в 20:48, курсовая работа

Описание

Қазіргі заманға лайықты шарттарда процесстердің шешім қабылдауын қамтамасыз ететін ақпараттың жүйелердің мәні өсуде. Деректер базасы көптеген ақпараттық жүйелердің негізгі элементтерінің бірі болып табылады. Электронды машинаның көмегімен табылатын және өңделетіндей етіліп жүйеге келтірілген объекттік формада көрсетілген дербес материалдардың жиынтығы деректер базасы болып табылады. Деректер базасы қолданылуы бойынша өзіндік артықшылықтарына ие:

Содержание

КІРІСПЕ....................................................................................................... 3
1 «Құрылыс шығынын есептеу»
ПӘНДІК АЙМАҒЫН зерттеу....................................................…..... 4
1.1 Пәндік аймақтың сипаттамасы: ………………………................... 4
1.2 Пәндік аймақтың ақпараттық объектілерін, атрибуттарын, байланыстарын, шектеулерін анықтау және инфологиялық моделін құру……………………………………………………...... 5
2 ДЕРЕКТЕР БАЗАСЫН ЛОГИКАЛЫҚ ЖОБАЛАУ................. 10
2.1 Деректер моделін таңдау..................................................................... 10
2.2 Қатынастарды нормализациялау және құжаттар схемасын құру.. 11

3 Деректер базасын машиналық жобалау ..................……….. 14
3.1 Деректер базасы қосымшасының жоба құрамы және құрылымы.. 14
3.2 Кестелерге триггерлерді құру .............……….............……….... 18

ҚОРЫТЫНДЫ…………………………………………………………. 20
ПАЙДАЛАНЫЛҒАН ӘДЕБИЕТТЕР ТІЗІМІ…………………

Работа состоит из  1 файл

курсовая работа .docx

— 2.56 Мб (Скачать документ)

 

  • Клиенттердің кайталанбайтын жеке күәлік номері арқылы тапсырыс

береді, ал қызметкер жобаны орындайды сондықтан бір бірін  байланыстыру үшін тапсырысты жобаға бағыттаймыз.

  • Тапсырысты толықтыру үшін тапсырыстың түрі қазет болады, сондықтан тапсырысты тапсырыс туріне бағыттаймыз.
  • Клиентке жобаның есеп хатын толығымен дайындап корсету ушын, жобаға шығынды бағыттаймыз ал шығынды материалдармен бағыттаймыз.

 

2.2 Қатынастарды нормализациялау және құжаттар схемасын құру

 

Қатынастарды нормализациялау

 

1)Қызметкер: (ФИО_СОТ, НОМ_РНН_СОТ, ДОЛж_СОТ, ОБРАЗ_СОТ, сТАЖ_СОТ, ном_УДл_СОТ) 

  • Барлық атрибуттар атомарлы, сондықтан қатынастар 1НФ-да.
  • Түйінді кілт – жай және барлық түйінді емес атрибуттар түйінді кілтке функционалды тәуелді – толық, сондықтан қатынас 2НФ- да болады.
  • Барлық түйінді емес атрибуттар түйінді кілтке функционалды тәуелді, басқа функционалды тәуелділік жоқ, сондықтан қатынас 3НФ-да.

 

2) Клиент: (К_ФИО, К_НОМ_РНН, К_ном_УДл)

  • Барлық атрибуттар атомарлы, сондықтан қатынастар 1НФ-да.
  • Түйінді кілт – жай және барлық түйінді емес атрибуттар түйінді кілтке функционалды тәуелді – толық, сондықтан қатынас 2НФ- да болады.
  • Барлық түйінді емес атрибуттар түйінді кілтке функционалды тәуелді, басқа функционалды тәуелділік жоқ, сондықтан қатынас 3НФ-да.

 

3) Тапсырыс: (ЗАК_КОД, ЗАК_НАЗ, ЗАК_ДАТА, ЗАК_ДАТА_УТВ, К_ном_УДл, ЗАК_ТИП_КОД)

  • Барлық атрибуттар атомарлы, сондықтан қатынастар 1НФ-да.
  • Түйінді кілт – жай және барлық түйінді емес атрибуттар түйінді кілтке функционалды тәуелді – толық, сондықтан қатынас 2НФ- да болады.
  • Барлық түйінді емес атрибуттар түйінді кілтке функционалды тәуелді, басқа функционалды тәуелділік жоқ, сондықтан қатынас 3НФ-да.

 

4) Тапсырыс түрі:( ЗАК_ТИП_КОД, ЗАК_ТИП_НАЗ)

  • Барлық атрибуттар атомарлы, сондықтан қатынастар 1НФ-да.
  • Түйінді кілт – жай және барлық түйінді емес атрибуттар түйінді кілтке функционалды тәуелді – толық, сондықтан қатынас 2НФ- да болады.
  • Барлық түйінді емес атрибуттар түйінді кілтке функционалды тәуелді, басқа функционалды тәуелділік жоқ, сондықтан қатынас 3НФ-да.

 

5) Жоба: (ОЧ_НОМ, ОЧ_НАЗ, ОЧ_ДАТА_УТВ, ЗАК_КОД, ном_УДл_СОТ)

  • Барлық атрибуттар атомарлы, сондықтан қатынастар 1НФ-да.
  • Түйінді кілт – жай және барлық түйінді емес атрибуттар түйінді кілтке функционалды тәуелді – толық, сондықтан қатынас 2НФ- да болады.
  • Барлық түйінді емес атрибуттар түйінді кілтке функционалды тәуелді, басқа функционалды тәуелділік жоқ, сондықтан қатынас 3НФ-да.

 

 

6) Шыгын(ОЧ_НОМ, МАТ_КОД, ОЧ_РАС)

  • Барлық атрибуттар атомарлы, сондықтан қатынастар 1НФ-да.
  • Түйінді кілт – жай және барлық түйінді емес атрибуттар түйінді кілтке функционалды тәуелді – толық, сондықтан қатынас 2НФ- да болады.
  • Барлық түйінді емес атрибуттар түйінді кілтке функционалды тәуелді, басқа функционалды тәуелділік жоқ, сондықтан қатынас 3НФ-да.

 

7) Материал(МАТ_КОД , МАТ_НАЗ, МАТ_ЕД_ИЗМ)

  • Барлық атрибуттар атомарлы, сондықтан қатынастар 1НФ-да.
  • Түйінді кілт – жай және барлық түйінді емес атрибуттар түйінді кілтке функционалды тәуелді – толық, сондықтан қатынас 2НФ- да болады.
  • Барлық түйінді емес атрибуттар түйінді кілтке функционалды тәуелді, басқа функционалды тәуелділік жоқ, сондықтан қатынас 3НФ-да.

 

Қатынастар кілтінің асты сызылады.

 

Қызметкер:

ФИО_СОТ

НОМ_РНН_СОТ

ДОЛж_СОТ

ОБРАЗ_СОТ

сТАЖ_СОТ

ном_УДл_СОТ

Символ (15)

Сан (12)

Символ (30)

Символ (30)

Сан (2)

Сан (9)


 

Клиент:

К_ФИО

К_НОМ_РНН

К_ном_УДл

Символ (15)

Сан (12)

Сан 9


 

Тапсырыс:

ЗАК_КОД

ЗАК_ТИП_КОД

ЗАК_ДАТА

ЗАК_ДАТА_УТВ

К_ном_УДл

Сан(4)

Символ (30)

Мерзім

Мерзім

Сан (9)


 

Тапсырыс түрі:

ЗАК_ТИП_КОД

ЗАК_ТИП_НАЗ

Код (3)

Символ (20)


 

Жоба:

ОЧ_НОМ

ОЧ_НАЗ

ОЧ_ДАТА_УТВ

ЗАК_КОД

ном_УДл_СОТ

Сан (4)

Символ (30)

Мерзім

Сан (4)

Сан (9)


 

Шыгын:

ОЧ_НОМ

МАТ_КОД

ОЧ_РАС

Сан (4)

Сан (4)

Сан(5)


 

Материал:

МАТ_КОД

МАТ_НАЗ

МАТ_ЕД_ИЗМ

Сан (4)

Символ (15)

Символ (8)


 

 

Құжаттар схемасын құру:

 

Сурет 3

3 суретте   шығу құжаттарындағы кестелерді аталық туынды деп кестелерді  бір-бірімен байланыстырған

 

 

 

 

 

 

Деректер базасын машиналық  жобалау

3.1 Деректер базасы қосымшасының жоба құрамы және құрылымы

 

Деректер  базасын жүзеге асыру үшін кестелер, деректер базасы, көріністер, формалар, есепхаттар және SQL сұраулары құрылатын  деректер базасының жоба қосымшасы  қолданылады. Оның негізгі компоненттеріне келесілер жатады.

 

Сурет 4 – SQL Server Configuration Manager бағдарламасында SQL Server Management Studio керекті мәліметтер орнатылып қосылған.

         MS SQL Server аутентификацисы құралдарын қолданып MyServ серверіне қосылыңыз: «sa» есепке алу жазбасы /учетный запись/ , пароль болмайды.

 

Сурет 5 – Соединение с  сервером терезесін қосқан арада  жаңадан ДБ құруға немесе қолданып жүрген ДБ-мен жумыс істеуге болады.

 

Қосымшаның деректер базасын құру үшін Create диалогтық терезесінде деректер базасының атын беру керек. (Database Designer) ДБ Конструктор терезесін және құрал-саймандар панелін қолданып кестенің құрылымын сипаттауын бастау.

Кесте құрылымы Table Designer (Кесте конструкторы) көмегімен сипатталады.

Кесте конструкторы парақтарының атқаратын  жұмыстары:

Fields –осы өрістердің деректерімен жұмыс істеу ережесі және кесте өрістерінің атрибуттарын сипаттауға арналған;

Indexes – кестенің индекстерін өзгерту және құруға арналған;

Table – кестеде сақталған деректрмен жұмыс істеу ережесін сипаттауға және енгізілген деректердің мен қосу, жою, өзгерту триггерлерінің дұрыстық шарттарын тексеруге арналған.

 

Деректер базасына кестелер құру.

 

Біздің  "Али" ДБ-ң кесте құрамыз. "Али" ДБ-да жаңа кестеа құру үшін  ПКМ да "Таблицы" папкасына шертіңіз және пайда болған мәзірден  "создать таблицу " пунктін таңдап сурет 5 көрсетілгендей кестедегідей толтырамыз. 

 

 

Сурет 5 – алғашқы қызметкер кестесінің құрылы. Қызметкер кестесінің бастапқы кілті – қызметкердің жеке куәлік номері.

 

 

Сурет 6 – Клиент кестесінің көрінісі. Бастапқы кілт – клиенттің аты жөні.

 

 

Сурет 7 – Тапсырыс кестесінің көрінісі. Бастапқы кілт – тапсырыс коды.

 

Сурет 8 – Тапсырыс түрі кестесінің көрінісі. Бастапқы кілт – тапсырыс түрінің коды.

 

Сурет 9 – Жоба кестесінің көрінісі. Бастапқы кілт – есеп хат номері.

 

Сурет 10 – Материал кестесінің көрінісі. Бастапқы кілт – материал коды.

 

Сурет 11 – Шығын кестесінің көрінісі. Шығын кестесіне бастапқы кілт орнатылмаған.

 

 

Деректер базасына диограмма құру.

 

Диаграммалар – бұл  бірінші кестедегі жазбалар екінші кестедегі жазбалармен байланысы бар болса, бірінші кестедегі жазбаның өшірілуіне тыйым салатын ДБ компоненті. Сондықтан,диаграмма деректер бүтіндігінің бұзылуына жол бермейді.  SQL Server- де диаграмма мастер диаграманың көмегімен құрылады.

 

Біздің  "Али" ДБ-ң бүтіндігін қамтамасыз ететін диаграмма құрамыз. " Али " ДБ-да жаңа диаграмма құру үшін  ПКМ да "Database Diagrams" папкасына шертіңіз және пайда болған мәзірден  "New Database Diagram" пунктін таңдаймыз. Диограммаға кестелерімізді орналастырамыз және кестелерді Сурет 11 көрсетілгендей бір-бірімен байланыстырамыз.

 

Сурет 11 – Қызметкер кестесі жоба кестесін әзірлейді.

 

 

Сурет 12 –Құрылған диограмма.

 

Кестелерге триггерлерді құру

 

Триггерлер - бұл Visual Studio-ғы оқиғаларды өңдеуші процедуралардың аналогы. Яғни, олар кестемен қандайда бір әрекет туындағанда (Мысалы: қосылу, өзгерту немесе жазбаны жою),  SQL командаларын орындайды .Тригердің көмегімен бірінші кестедегі өшірілген жазба екінші кестедегі жазбамен сәйкес келсе,онда екінші кестедегі жазбаның автоматты өшірілуін қадағалауға болады.

 

Кестеміздің триггерін  құрар алдында төменде көрсетілген  кодты жазып “Execute” батырмасын басамыз.

 

ALTER TRIGGER [dbo].[ Индикатор добавления klient]

   ON [dbo].[klient]  

   AFTER INSERT

AS

BEGIN

-- SET NOCOUNT ON added to prevent extra result sets from

-- interfering with SELECT statements.

SET NOCOUNT ON;

    -- Insert statements for trigger here

PRINT ' Запись добавлена'

END

 

Келесі батырма “создать запрос” батырмасы. Жаңа терезеге төмендегі код енгізіледі.

 

INSERT INTO dbo. klient

VALUES ( 'Трахадилов С.Л.'

,'183456779127' 

,'442299665'

)

 

Кестелік функция

 

Кестелік функциялар – мәнді кесте ретінде шығаратын функция.

 

Кестелік функциялармен жұмыс ыстер алдында жаңадан функция құрып төменде көрсетілген кодты теремыз де “Execute” батырмасын басамыз.

 

ALTER FUNCTION [dbo].[Жобалардың шыққан  шығыны]

-- Add the parameters for the function here 

)

RETURNS TABLE

AS

RETURN

(

-- Add the SELECT statement with parameter references here

SELECT joba.och_nom,joba.och_naz,joba.och_data_utv,joba.nom_udl_sot,

wigin.och_ras,

material.mat_kod,material.mat_naz,material.mat_ed_izm,

tapsiris.zak_kod,tapsiris.zak_tip_kod,tapsiris.zak_data,tapsiris.zak_data_utv,tapsiris.k_nom_udl

from joba,wigin,material,tapsiris

where joba.och_nom=wigin.och_nom and joba.zak_kod=tapsiris.zak_kod and wigin.mat_kod=material.mat_kod

)

 

Келесі батырма “создать запрос” батырмасы. Жаңа терезеге төмендегі код енгізіледі.

 

select * from [Жобалардың шыққан шығыны] ()

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Қорытынды

 

Курстық жұмысты орындауда, пәндік аймақты таңдап, оны зерттей ортырып, инфологиялық моделін құруды үйрендім.

   Иерархиялы немесе желілі моделдерге қарағанда реляционды моделде абстракцияның анағұрлым көбірек жоғары дәрежеде жүзеге асады.

Жұмыстың нәтижелерін  жорамалдау реляционды моделдің негізінде  жатқан деректерді математикалық моделдеумен  қамтамасыз етіледі. Нақты тілде  құрылған  деректер базасына деген  кез-келген  сұрау ДБ-ның схемасымен және нақтылы деректермен анықталған жауап қайтарады. Таңдап алынған  пәндік аймақ терминдік қатынастарда жеткілікті нақты суреттеледі. Жазбалардың  артық қайталануы жоқ. Модель көрнекі  және қажеттілік жағдайда кез-келген деңгейдегі деректерге рұқсатты іске асыруға болады.

Қазіргі уақытта деректердің реляциялық қалыбы көптеген мәліметтерді иеменденіп және қазіргі кездегі деректер базасының басқару жуйесіне мұндай мәлiметтердiң берiлуiне тап бағдарланған.

Реляциялық үлгi мәлiметтердiң  қарастыруын ерекше әдiс сияқты көрсетуге  болады және оларды (байланыс түрінде) манипуяциялауға болады. Басқа модельдерге қарағанда деректер базасындағы реляционды моделде пайдаланушы қандай мәліметтер керек, қандай маліметтер керек еместігін өзі корсете алады.

Информация о работе SQL курсовая работа