Жұмыстың мақсаты: жолдардың деректер типі мен кестелерді зерттеп, кестелерді құру және олармен орындайтын негізгі операцияларды игеру.
3.1Зертханалық жұмысқа тапсырмалар «Студент», «Мамандықтар», «Пәндер» және «Бағалар» кестесін құру және толтыру.
3.2 Зертханалық жұмысты орындауға арналған әдістемелік нұсқаулар
SQL Server-де кестелерді құру үшін біріншіден кесте құрылып жатқан дерек қор-ын активтендіру керек. Ол үшін жаңа сұраныста USE <ДҚ-аты> командасын теруге болады немесе аспаптар бетіндегі түсетін тізімдегі жұмыс істейтін дерек қорын таңдау керек. Дерек қорын таңдаған соң кестелерді құруға болады.
Кестелер мына командалармен құрылады:
CREATE TABLE <Кесте аты>
(<Жол аты1> <Тип1> [IDENTITY NULL|NOTNULL],<жол аты2> <Тип2>, … )
Мұнда:
< Кесте аты > - Құрылатын кесте аты; < Жол аты > - Кесте жолдары аты; <Тип> - жолдар типі; - Санағыш жолы.
Ескерту: егер жол атауында бос орын(пробел) болса, онда ол тік жақшаға алынады.
Студент коды (біріншілік байланыс жолы, санағыш), Тегі, Аты, Әкесінің аты, Мекенжайы, Мамандық коды (екіншілік байланыс жолы) жолдарын құрайтын «Студент» кестесін құру үшін келесі скрипті тереміз:
CREATE TABLE Студент
([студент коды] Bigint Identity,
Тегі Varchar(20), Аты Varchar(15), Әкесінің аты Varchar(20),
Мекенжай Varchar(100), [Мамандық коды] Bigint)
Ескерту: Егер есептелетін жол құру керек болса, онда Create Table командасында есептелетін жолда деректер типінің орнына өрнеккөрсету керек.
Мысал: Үш түрлі бағасы бойынша студенттің орташа балын есептеу.
CREATE TABLE Бағалар
(ТАӘ Varchar(20), Баға1 int, Баға2 int, Баға3 int,
[Орташа балл] = (Баға 1+ Баға2 + Баға 3)/3
Ескерту: Кесте туралы ақпарат алу мына команданы қолдану арқылы орындалады: EXEC SP_HELP < Кесте аты>. Кестені жою үшін қолданылатын команда: DROP TABLE < Кесте аты>.
Кестелерді толтыру. SQL Server 2008-де кестелерді толтыру келесі команданың көмегімен орындалады:
INSERT < Кесте аты > [(<Жол тізімі>)] VALUES (<Жол мәндері>)
Мұндағы < Кесте аты> - деректер енгізілетін кесте, (<Жол тізімі>) – деректер енгізілетін жолдар тізімі, егер көрсетпесек, онда барлық жолдарды толтыру қажет, жолдар тізімінде жолдар үтір арқылы көрсетіледі, (<Жол мәндері>) – жолдардың мәні үтір арқылы.
Мән ретінде Default тұрақтысын көрсетуге болады, яғни үнсіздік бойынша қабылданған мән қойылады, немесе Select операторын қоюға болады. Мұнда ол формулаларды есептеу аспабы ретінде қолданылады.
Үлгі: «Студент» кестесіне келесі мәнді жолдары бар ТАӘ = Иванов, Мекенжай = Мәскеу, Мамандық коды = 5 қосылған жазбалар.
INSERT Студент(Тегі, Аты, Әкесінің аты, Мекенжай, [Мамандық коды])
VALUES (‘Иванов’, ‘Антон’, ‘Антонович’, ‘Астана’, 5)
Кестеден бөлек жолдар мен бөлек бағандарды жою. Кестеден барлық бағандарды немесе бөлек жазбаларды жоюға болады. Олар мына команданың көмегімен орындалады:
DELETE < Кесте аты > [WHERE <Шарт>]
Мұндағы <Шарт> - жойылатын жазбалар қанағаттандыратын шарт, егер шарт көрсетілмесе, онда кестедегі барлық жолдар жойылады. Егер шарт көрсетілген болса, онда осы шартты қанағаттандыратын жолдар жойылады.
Үлгі: «Студент» кестесіндегі Мекенжай = Астана жолын жою.
DELETE Студенттер WHERE Мекенжай = ‘Астана’
Кестедегі деректерді өзгерту. Ол үшін келесі команда қолданылады:
UPDATE <Кесте аты >
SET < Жол аты1> = <Өрнек1>, [<Жол аты 2> = <Өрнек2>,]
…
[WHERE <Шарт>]
Мұндағы < Жол аты1>, < Жол аты2> - өзгертілетін жолдар аты, <Өрнек1>, <Өрнек2> - не нақты мәндер, не NULL, не SELECT операторы. Мұнда SELECT функция ретінде қолданылады. <Шарт> - жолдары өзгертілетін жазбалардың қанағаттандыру керек шарты.
Үлгі: «Студент» кестесінде студент Ивановтың мекенжайын Астанадан Таразға ауыстыру, ал мамандық кодын 5-тен 3-ке ауыстыру.
UPDATE Студент SET Мекенжай = ‘Тараз’, [Мамандық коды] = 3 WHERE ТАӘ =‘Иванов’
Ескерту: өрнек ретінде математикалық формулаларды қолдануға болады.
Мысал: SET [Орташа балл]= (Баға1+ Баға2+ Баға3)/3), «Баға1», «Баға2» және «Баға3» жолдарының орташасы ретінде «Орташа балл» жолын есептейді. Сонымен қатар «Баға1», «Баға2» және «Баға3» жолдары бұған дейін болуға тиіс және де «Орташа балл» жолы нақты тип ретінде анықталады (Мысалы Real).
Ескерту: егер кестеден барлық жазбаларды өшіру керек болса, алайда оның құрылысын сақтап қалу үшін TRUNCATE TABLE <Жол аты> командасы қолданылады, сонда барлық жазбалар жойылады да, бірақ кестенің өзі қалады.
Дерек қорының барлық кестелерінің объектілерін шолушы терезесіндегі «Students» папкасының ішіндегі «Tables» папкасында орналасады. (3.1 суретке қараңыз).
3.1 сурет - Дерек қорының барлық кестелерінің объектілерін шолушы терезесі
«Мамандықтар» кестесін құрайық. Ол үшін «Tables» папкасының үстінен ПКМ-ді шертіңіз, кейін пайда болған мәзірде «New Table» пунктін таңданыз. Жаңа кесте құру терезесі пайда болады (3.2 суретке қараңыз).
Терезенің оң жақ бөлігінде жаңа кестенің жолдарын анықтау кестесі орналасқан. Берілген кестенің келесі бағандары бар:
1) Column Name – жол аты. Жолдың аты әрқашан әріптен басталуы керек және жолда әртүрлі символдар мен тыныс белгілерінің болмауы тиіс. Егер жол атауында бос орын (пробел) болса, онда ол автоматты түрде тік жақшаға алынады.
2) Data Type – жолдың деректер типі.
3) Allow Nulls – Null рұқсат етілген мәні. Егер жолдың бұл опциясы қосылған болса, онда жолды толтырмау жағдайында оған автоматты түрде Null мәні қойылады, яғни жолды толтыру міндетті болып саналмайды.
Ескерту: жолды анықтайтын кестенің астында бөлінген жолдың қасиеттерінің кестесі «Column Properties» орналасқан. Берілген кестеде бөлінген жолдың қасиеттері бапталады. Кейбіреулерін төменде қарастырамыз.
Жолдарды жасау мен олардың қасиеттерін баптауға өтейік. Жолдарды анықтау кестесінде «Column Name», «Data Type» және «Allow Nulls»бағандарының мәндерін беріңіз (3.3 суретке қараңыз).
3.3 сурете «Мамандықтар» кестесі үш жолдан тұрады:
1) Мамандық коды – студенттер кестесімен байланысқа арналған сандық жол.
2) Мамандық атауы – ұзындығы 50 символдан аспайтын жолдарды сақтауға арналған мәтіндік жол.
3) Мамандық сипаттамасы – ұзындығы шексіз жолдарды сақтауға арналған мәтіндік жол.
Ескерту: «Мамандық коды» жолы «Студент» және «Мамандықтар» кестелерін байланыстыратын сұраныста біріншілік байланыс жолы болғандықтан, біз оны сандық санағыш деп қоюымыз керек, яғни берілген жол автоматты түрде сандық мәндермен толтырылуы және кілттік болуы тиіс.
<
3.3 сурет - Жаңа кестелерді құруға арналған екінші терезе
«Мамандық коды» жолын санағыш (счетчик) қылайық. Ол үшін жолдарды анықтау кестесінен тінтуірді жай шерту арқылы жолды бөліп алыңыз. Жолдың қасиеттерінің кестесінде «Мамандық коды» жолының қасиеттері көрсетіледі. «Identity Specification» (Ерекшеліктерін баптау) қасиеттерінің топтамасын ашыңыз. «(Is Identity)» (Ерекше) қасиетіне «Yes» (Иа) мәнін қойыңыз. «Identity Increment» (Ерекшеліктерін үлкейту, санағыш қадамы) және «Identity Seed» (Ерекшелік басы, санағыштың бастапқы мәні) қасиеттерін 1-ге тең деп алыңыз (3.3 суретке қараңыз). Бұл баптаулар «Мамандық коды» жолының мәні бірінші жазбада 1-ге тең болатынын, ал екіншісінде 2-ге тең т.с.с. болатынын көрсетеді.
Енді «Мамандық коды» жолын кілттік жол деп алайық. Жолды бөліп алыңыз, содан соң аспаптар бетіндегі кілттің суреті тұрған батырманы басыңыз.
Жолдарды анықтау кестесінде «Мамандық коды» жолының қасында жолдың кілттік екенін көрсететін кілттің суреті пайда болады. Осыдан «Мамандықтар» кестесінің баптауын аяқталды деп санауға болады. Жаңа кесте құрудың терезесін, жолдарды анықтау кестесінің үстінде, оң жақ жоғары бұрышта орналасқан жабу батырмасын басу арқылы жабыңыз.
Кесте толық құрылғанан кейін сақтауға арналған сұраныс терезесі пайда болады. Бұл терезеде «Yes» (Иә) батырмасын басу керек. Осыдан кейін жаңа кестенің атын анықтауға арналған «Chose Name» (Атын беріңіз) терезесі пайда болады (3.4 суретке қараңыз).
3.4 сурет - Жаңа кестенің атын анықтауға арналған «Chose Name» терезесі
Бұл терезеде жаңа кестенің атын «Мамандықтар» деп беріңіз де «Ok» батырмасын басыңыз. «Мамандықтар» кестесі «Students» дерек қорындағы «Tables» папкасында орналасқан объектілерді шолушыда көрсетіледі (3.5 суретке қараңыз).
Ескерту: объектілерді шолушыда «Мамандықтар» кестесі «dbo.Мамандықтар» деп көрсетіледі. «dbo» префиксі кестенің дерек қор (Data Base Object) объекті екенін көрсетеді. Келесіде объектілермен жұмыс жасағанда «dbo» префиксін түсіруімізге болады.
Енді «Пәндер» кестесін құруға көшейік. «Мамандықтар» кестесі жағдайындағыдай «Tables» папкасының үстінен ПКМ-ді шертіңіз, кейін пайда болған мәзірде «New Table» пунктін таңдаңыз. Төмендегі суретте көрсетілген жолдарды құрыңыз (3.5 суретке қараңыз).
3.5 сурет - Жаңа кестелерді құруға арналған үшінші терезе
«Мамандықтар» кестесінде жасалғандай «Пән коды» жолынан сандық санағыш және кілттік жол жасаңыз. Жаңа кесте құру терезесін жабыңыз. Пайда болған «Chose Name» терезесінде «Пәндер» атын беріңіз (3.6 суретке қараңыз).
«Пәндер» кестесі объектілерді шолушыда «Tables» папкасында пайда болады ( 3.7 суретке қараңыз).
3.6 сурет - «Chose Name» терезесі
«Пәндер» кестесін құрғаннан кейін «Студент» кестесін құрыңыз. 3.7 суретте көрсетілген кестеге ұқсас жаңа кесте құрыңыз.
3.7 сурет - Жаңа кестелерді құруға арналған төртінші терезе
Жаңа кестенің жолдарын қарастыра отырып, келесі қорытындыға келуімізге болады:
- «Студент коды» жолы – бұл баға кестесімен байланыстың біріншілік жолы. Демек берілген жолды сандық санағыш және кілттік деп алуымыз керек (жоғарыда «Мамандықтар» кестесінің құрылуын қараңыз);
- «Тегі», «Аты», «Әкесінің аты», «Жынысы», «Ата-анасы», «Мекенжай», «Телефон», «Паспорттық деректер» және «Топ» жолдары әртүрлі ұзындықтағы мәтіндік жолдар болып табылады (Бөлінген мәтіндік жолдың ұзындығын беру үшін, бөлінген жолдың қасиеттерінің кестесінде Length қасиетін жолға максималь енгізілетін таңбаларға тең етіп орнатуымыз керек);
- «Туған жылы» и «Түскен жылы» жолдары жылдарды сақтауға арналған. Сондықтан олардың деректер типі «date»;
- «Күндізгі оқу түрі» жолы логикалық жол болып табылады. «Microsoft SQL Server 2008»-де мұндай жолдардың деректер типі «bit» болуы тиіс;
- «Сынақ кітапша нөмірі» және «Курс» жолдары бүтін сандық болып табылады. Жалғыз айырмашылықтары жолдарының өлшемі болып табылады. «Сынақ кітапша нөмірі» жолы -263…+263 аралығындағы (деректер типі «bigint») бүтін сандарды сақтауға арналған. «Курс» жолы (деректер типі «tinyint») 0…255 аралығындағы бүтін сандарды сақтауға арналған;
- «Мамандық коды» жолы – бұл «Мамандықтар» кестесімен байланыстың жолы. Алайда берілген байланыс жолы екіншілік болып табылады, сондықтан оны бүтін етіп алуымызға болады, яғни «bigint».
«Студент» кестесінің жолын анықтағаннан кейін жаңа кесте құрудың терезесін жабыңыз. Пайда болған «Chose Name» терезесінде жаңа кесте атын «Студент»
«Студент» кестесі объектілерді шолушыдағы «Tables» папкасында пайда болады. Жоғарыда көрсетілгендей «Бағалар» кестесін құрыңыз.
«Бағалар» кестесінде біріншілік байланыс жолдары жоқ. Демек бұл кестеде кілттік жолдары жоқ. «Пән коды 1», «Пән коды 2» және «Пән коды 3» жолдары «Пәндер» кестесімен байланысқа арналған екіншілік байланыс жолдары болып табылады, сондықтан олар бүтіндік болып табылады (деректер типі «bigint»). «Емтихан мерзімі 1», «Емтихан мерзімі 2» и «Емтихан мерзімі 3» жолдары мерзімдерді сақтауға арналған (деректер типі «date»). «Баға1», «Баға2» және «Баға3» бағаларды сақтауға арналған. Бұл жол үшін деректер типін «tinyint» деп беріңіз. Соңында, «Орташа балл» жолы бөлшек сандарды сақтайды және типі «real».
3.8 сурет - Дерек қорының барлық кестелерінің объектілерін шолушы терезесі
Жаңа кесте құру терезесін жабыңыз. Пайда болған «Chose Name» терезесінде «Бағалар» атын беріңіз.
Барлық кестелерді құрған соң объектілерді шолу терезесі осындай болады (3.8 суретке қараңыз).
Енді кестелерді бастапқы деректермен толтыру операцияларын қарастырайық.
«Мамандықтар» кестесін толтырайық. Бұл кестені толтыру үшін объектілерді шолушыда тінтуірның оң жақ батырмасымен «Мамандықтар» кестесін шертіңіз (3.9 суретке қараңыз), содан соң пайда болған мәзірде «Edit Top 200 Rows» (Алғашқы 200 жазбаны өзгерту) пунктін таңдаңыз. «Microsoft SQL Server Management Studio» жұмыс істеу аймағында кестелерді толтыру терезесі шығады. «Мамандықтар» кестесін 3.9 суретте көрсетілгендей толтырыңыз.
3.9 сурет - Кестеге ақпараттарды енгізуге арналған терезе
Ескерту: «Мамандықтар коды» жолы біріншілік байланыс жолы және кілттік сандық санағыш болғандықтан, ол автоматты түрде толтырылады (оны толтыру қажет емес).
Жоғары оң жақ бұрышта кестенің үстінде орналасқан жабу батырмасын басу арқылы, «Мамандықтар» кестесін толтыру терезесін жабыңыз.
.
«Мамандықтар» кестесін толтырған соң «Пәндер» кестесін толтырамыз. Оны жоғарыда айтылғандай ашыңыз да, 3.9 суретке ұқсас түрде толтырыңыз.
«Пәндер» кестесін толтыру терезесін жабыңыз да, «Студент» кестесін толтыруға көшіңіз. «Студент» кестесін толтыруға ашып, оны толтырыңыз.
Ескерту: Мерзімдерді толтыру үшін бөлгіш ретінде «.» таңбасын қолдануға болады. Мерзімдерді мына форматта толтыруға болады «күн.ай.жыл».
«Мамандық коды» жолы екіншілік байланыс жолы болып табылады («Мамандықтар» кестесімен байланыс үшін). Осыдан, бұл жолдың мәндерін «Мамандықтар» кестесіндегі «Мамандық коды» жолының мәндерімен толтыруымыз керек. Біздің жағдайда ол 1-ден 5-ке дейінгі мәндер (3.10 суретке қараңыз). Егер сізде «Мамандықтар» кестесінде мамандықтар коды басқа мәндерді иемденсе, онда оларды «Студент» кестесіне енгізіңіз. Толтыруды аяқтаған соң «Студент» кестесін толтыру терезесін жабыңыз.
Соңында «Бағалар» кестесін толтырайық, ол 3.10 суретте көрсетілген.
3.10 сурет - Кестеге ақпараттарды еңгізуге арналған терезе
«Студент» кестесіндегідей мерзімдері (дата) бар жолдар толтырылады. Ескерту: «Пән коды 1», «Пән коды 2» және «Пән коды 3» жолдары «Пәндер» кестесімен екіншілік байланыс жолы болып табылады. Сондықтан олар осы кестеден «Пән коды» жолындағы мәндермен толтырылуы керек, яғни 1-ден 5-ке дейінгі мәндермен.
«Бағалар» кестесін толтыру терезесін жабыңыз. Осыдан біз дерек қор «Students» кестелерін құру және толтыруды аяқтаймыз.
3.3 Бақылау сұрақтарының тізімі 3.3.1 Желінің конфигурациясының жалпы сұлбасын сипаттау.
3.3.2 Қандай конфигурациялық файлдар желінің баптауы бойынша жүйеде бар және олар қайда орналасқан?
3.3.3 Қалай Wi-Fi-желіге қосылуға болады, мысалға КТ кафедрасына?
3.3.4 Wi-Fi-желіні қалай жасауға болады?