2-тажриба иши. SQL server МБда ишлаш
Мақсад: SQL server МБда ишлашни тахлил қилиш, уларни тавсифлаш ва талабаларда бу объектларни яратиш ва қўллаш бўйича билим ва малакаларни ҳосил қилиш.
Вазифа: Талабалар мустақил равишда қуйидагиларни бажариши ва улар ҳақида малака ва кўникмаларга эга бўлиши лозим.
1. Мавзуга тегишли маълумотларни ўрганиш ва таҳлил қилиш.
2. Ўзига берилган топшириқ учун SQL server МБда жадваллар яратиш.
3. SQL server МБда жадвалларни боғлаш.
Жиҳозлар Компьютер.
Услубий кўрсатма: SQL server МБда ишлаш
Жадвал яратиш Жадвал яратишнинг иккита усули мавжуд. CREATE ёки ALTER номли SQL операторлари ёрдамида яратиш. SQL нинг график имкониятларидан фойдаланиб яратиш.
( customerID int PRIMARY KEY,
[Name] char(50) not null,
AreaCode char(5) null
Default (206)
Check (areaCode IN (“206”, “425”, “212”)),
localNumber char(8) )
Бу буйруқда [Name] квадрат қавсга олиб ёзилган, чунки Name сўзи резервланган.
Иккинчи усул жадвални график усулда яратиш. ENTERPRISE MANENGER ойнасидаги TABLES белгисига кўрсаткични келтириб ўнг кнопка босилади ва у ердан NEW TABLE танланади.
Жадвал структурасини ўзгартириш Жадвал структурасини ўзгатиришнинг ҳам бир нечта усули бор. Биринчи усул, ALTER SQL операторидан фойдаланиб ўзгартириш.
ALTER TABLE mijoz
ALTER COLUMN name char(100) NOT NULL
ALTER TABLE mijoz
ADD CustomerSince Year NULL
ALTER TABLE mijoz
DROB COLUMN LocalNumber
ALTER TABLE mijoz
ADD LocalNumber char(25) NULL
Юқорида mijoz жадвалининг структурасини ўзгартирувчи бир нечта ALTER операторлар келтирилган. Биринчи оператор Name устунининг узунлигини 100 символгача оширади.
Иккинчи ALTER оператори янги CustomerSince устунини яратади ва унга Year типини белгилайди.
Новбатдаги иккита ALTER оператори устун узунлигини ўзгартиришнинг алтернатив усулини намойиш қиляпти. Биринчиси LocalNumber устунини ўчиради. Иккинчиси уни бошқатадан узунлигини ўзгартирган ҳолда яратади. Иккинчи усул ёрдамида устун узунлиги ўзгартирилганда устунга тегишли маълумотлар йўқотилади.
Боғланишларни ҳам худди бошқа структуралар сингари икки хил йўл билан яратиш мумкин: ёки ALTER TABLE оператори ёрдамида ташқи калит яратиш арқали, ёки МБ диаграммасида боғланишларни чизиш орқали.
Стрелкани DIAGRAMS белгисига келтириб сичқончанинг ўнг тугмасини босамиз NEW DATABASE DIAGRAM (МБ нинг янги диаграммаси) ни танлаймиз. Натижада мастер ишга тушади. МБ даги барча жадвалларни жойлаштирамиз. Боғланишни ўрнатиш учун бирор жадвалнинг бирламчи калитини олиб иккинчи жадвалнинг ташқи калит майдони устига келтириб қўямиз. Экранда диалог ойнаси пайдо бўлади. SQL SERVER боғланишни сукут қоидаси бўйича таклиф қилади. Биз бу боғланишни ўрнатишимиз мумкин. Фақат ойнанинг пастки қисмида мавжуд бўлган байроқчалар орқали мурожаат бутунлигини ўрнатишимиз мумкин.
Биринчи байроқча мавжуд маълумотларнинг мурожаат бутунлиги учун ишлатилади. Агар жадвал яратилгандан кейин боғланиш ўрнатилаётган бўлса, бу байроқчани ўрнатишга ҳожат йўқ. Чунки бутунлигини текшириш учун маълумотлар йўқ. Агар маълумотлар киритилган жадвалларни боғламрқчи бўлсак, бу байроқчани ўрнатиш зарур бўлади. Байроқча қўйилмаган ҳолда SQL SERVER фақат янги киритилган маълумотларнинг мурожаат бутунлигини таъминлайди.
Кейинги байроқча Enforce relationship for replication (Репликация вақтида боғланишни қўллаш) бўлиб тақсимланган қайта ишлашда қўлланилади.
Учинчи байроқча Enforce relationship for INSERTs and UPDATEs (Қатор қўйиш ва ўзгартириш вақтида боғланишни қўллаш) бўлиб мурожаат бутунлигини таъминлашда муҳим роль ўйнайди. Бу байроқча қўйилмаса асосий жадвалдаги сатр ўчирилганда унга боғлиқ бўлган иккинчи жадвалдаги маълумотлар назорат қилинмайди. Иккинчи жадвалдаги боғлиқ маълумотлар ҳам ўчиши учун ON DELETE CASCADE га ҳам байроқча ўрнатиш керак.
Топшириқ 1. Мавзуга тегишли маълумотларни ўрганиш ва таҳлил қилиш.
2. Талаба ўзига берилган вариант бўйича SQL serverда жадваллар яратади.
3. Талаба ўзига берилган вариант бўйича SQL serverдаги жадваллар ўртасида боғланишни ташкил қилади.
Тажриба машғулотни бажариш тартиби 1. Амалий машғулотнинг услубий қисмини ўрганиб чиқинг.
2. Топшириқлар тўпламидан топшириқ танлаб олинг.
3. Топшириқни қўйилган шарти асосида бажаринг.