- •Ташкент информациялық технологиялар университети нөкис филиалы
- •§ 2. Мағлыўматлар базасының моделлери
- •2.1. Реляциялық мағлыўматлар базасы
- •2.2. Иерархиялық мағлыўматлар базасы
- •2.3. Тармақлы мағлыўматлар базасы.
- •§ 3. Мағлыўматлар базасын басқарыў системалары
- •3.1. Мағлыўматлар базасын басқарыў системаларының архитектурасы
- •§ 4. Ms access мағлыўматлар базасын басқарыў системасы.
- •4.1. Microsoft Access жумыс айнасы
- •§ 5. Таблица дүзиў
- •§ 6. Таблицалар арасындағы байланысты дүзиў
- •6.1. Байланысқан таблицалар
- •§ 7. Сораўларды дүзиў
- •7.1. Мағлыўматлар базасында ажратыў ушын сораў
- •7.2. Үлгили сораў бланкасын толтырыў
- •7.3. Параметрли сораўлар.
- •7.4. Cораўларды есаплаў.
- •7.5. Жуўмақлаўшы сораўларды дүзиў технологиясы
- •7.6. Өзгертиў сораўлары
- •§ 8. Формаларды дүзиў
- •8.1. Автоформалар
- •(Мастер жәрдеминде форманы дүзиў )
- •8.2. Форма дүзилмеси
- •8.3. Жазыўды дүзиў
- •8.4. Байланысқан майданшаларды дүзиў ҳәм редакторлаў
- •8.5. Форманың басқа басқарыў элементлери
- •§ 9. Есабатларды таярлаў
- •9.1. Автоесабатлар
- •9.2. Есабат дүзилмеси
- •§ 10. Sql сораўлар тили.
- •10.1. Sql тилиниң буйрықлары ҳәм операторлары
- •10.2. Select буйрығы
- •From-таблицалар аты;
- •Baxit c Sales
- •Name Dept
- •Функциялар
- •Select avs(distinct Salary)”avs salary”
- •Нәтийжеде Salary бағанасының барлық элементлериниң қосындысын есаплайды.
- •Бундай жағдайларда компьютер
- •Name Length
- •Мағлыўматларды тәртипке салыў.
- •Select Los, Name from micall
- •Select Name, Los from mical
§ 10. Sql сораўлар тили.
Сораўлар тили - белгили талаплар тийкарында МБға мирәт етип, оннан сораў талапларына жуўап беретуғын нәтийжелерди алыў тили. Ҳәзирги ўақытта түрли Мбсы ҳәм олардың системалары жаратылған. Бирақ барлық реляциялық түрдеги МБ-на мирәт етип олардан тийисли мағлыўматларлы алыўдың SQL(Structed Query Language – Структураластырылған сораўлар тили) тили ислеп шығылған. Бул тилде сораўлар қандай қураллар жәрдеминде жаратылыўына тоқтаймыз. Соны айтыўымыз керек, айырым МББСларында (мысалы, Accessте) оны ислетпестен таңлаўға сораў яки айрықша үлги бойынша сораў бланкасы ретинде мирәт еип тийисли мағлыўматлар алынады., бундай сораўларды дүзиў ушын База данных/Создать(Мағлыўматлар базасы/дүзиў) буйрығынан пайдаланылады. Сораў нәтийжесин жуўап ретинде таблица көринисинде алыў мүмкин.
10.1. Sql тилиниң буйрықлары ҳәм операторлары
SQL тили ҳәзир ықтыярый берилгенлер базасына мораў берип оннан жуўап алыўды тәмийнлеўши қурал болып есапланады. Бул толық табылатуғын мысал тийкарында көрип шығамыз. Керекли түсиниклер мүмкиншилиги барынша қаралып атырған жағдайларды түсиндириў ушын киритиледи.
Мысалы, төмендеги таблицада кәрхана хызметшилери ҳаққында мағлыўматлар келтирилген
Name |
Dob |
Pol |
Los |
Department |
Salary |
Telno |
Barliqbay P. Sailawbay K. Jan’abay N. Shayaxmet B. Sag’alatdin T. Kamal S. Sarsenbay A. Orazbay B. Berdax N. Bibi A. Baxit C. Baxtiyar A. Genjebay G. Rawaj F. |
17/01/57 20/02/55 13/05/51 16/03/52 02/07/52 19/12/56 01/02/47 07/11/49 25/08/79 20/06/61 25/05/61 01/02/75 12/12/70 19/10/69 |
M M M M M M M M M F F M M M |
25 27 29 29 28 25 33 31 2 22 21 8 4 5 |
Admin Admin Worker Worker Worker Worker Account Account Technic Technic Sales Sales Servise Servise |
50000 65000 35000 45000 36000 29000 100000 70000 12000 11000 7500 7000 7500 8000 |
2236054 2238722 2243110 2232890
2243688 2236001 2236002
2236003 2236004 2236005 2236006 2236007 |
Усы таблица 7 бағана ҳәм 14 қатардан турады. Ҳәр бир бағана өз атына ийе.
Name - хызметшилер аты, Dob – туўылған күни, Pol – жынысы, Department –кәрханадағы хызметши ислеп атырған бөлим, Salary – хызметшилердиң айлығы, Telno – телефон номери. Жоқарыдағы бағаналар аты матрица атрибутлары атын алған. Ҳәр бир қатар анық хызметши хаққында мағлыўматларды өз ишине алады.
Ҳәр бир бағана ҳәр қыйлы узынлыққа ҳәм түрге ийе екенлигине итибар беремиз. Name бағанада максимал узынлығы 15 орынға ийе болған сөзлер – кәрхана хызметшилериниң атлары көрсетилген. Кейинги Dob бағана сәне түрине, басқа узынлыққа ийе ҳәм т.б.лар. Бағананың түри ҳәм узынлығы оның атрибутлары есапланады. Биринши бағанадан көринип турыпты, бул анықламалар ҳәр қыйлы ҳәм соның ушын таблицаны белгилеўде олар тийисли түрде анықланыўы керек.
Ақырында, бул таблицаны басқа таблицадан ажырата алыў ушын ол өзиниң атына ийе болыўы керек.
Ҳәр бир қатарда бир мәнисте анықлап бере алатуғын бағаналар ямаса бағаналар топары гилтли деп аталады. Олар таблицаны дүзиўде айрықша ажыратылыўы керек.
Енди таблицалардың жаратылыў усылын үйрениўге өтемиз. Таблицаны жаратыўда таблица атын, бағаналар атын, атрибутларының түри ҳәм узынлықларын бериў керек. SQL төмендеги өзгериўши – қатарлы, санлы, ўақыт, сәне ҳ. т. б. түрлердиң киритилиўине мүмкиншилик береди.
Қатарлы түр белги ҳәм санлардан дүзилген өзгериўшилерди билдириў ушын ислетиледи. Бунда биринши белги( символ) ҳәрип болыўы керек.
Char – узынлығы 254 байттан аспайтуғын қатарлы өзгериўшини билдириў ушын хызмет етеди.
Санлы өзгериўшилерди билдириўде Number гилтли сөзи қолланылады ҳәм ол -1.0E-100 ден 1.0E+100геше болған аралықта 22 қатарға ийе болатуғын санларды билдиреди.
Сәне ҳәм ўақытты билдириўде Date түри қолланылады ҳәм оның жәрдеминде:
ўақытты анықлайды(саат, минут, секунд стандартында мысалы 13.05.51).
сәнени аңлатыў ушын Европа стандартынан ямаса Америка стандартынан пайдаланылады.
Енди жоқарыдағы таблицаны жаратыў ушын төмендегилерди жазыўымыз мүмкин:
CREATE TABLE mical
(id NUMBER(5.0) PRIMARY KEY,
NAME CHAR(15) NOT NULL,
Los NUMBER (2,0),
Dept CHAR (15),
Salary NUMBER(7,2)
Telno CHAR(7));
Name бағана Notnull көмекши сөзин өз ишине алады. Бул оның бос қатарларды өз ишине алмайтуғынын билдиреди. Ҳәр бир SQL гәпиниң кейнинде ноқат үтир турыўы керек. Берилген гәп бойынша компьютер mical таблицасын жаратады, бирақ таблица оған мағлыўматлар киритилмегени себепли бос болады.
Стандарт SQL тилинде мағлыўматларды киритиў INSERT буйрығы тийкарында әмелге асырылады. Бул буйрық бир қатарды киритиўге мүмкиншилик береди, кейинги қатардың киритилиўи INSERT буйрығының қайтарылыўы жәрдеминде пайда болады.
INSERT INTO mical (Name, Dob, Pol, Los, Dept, Salary, Telno)
Valies (‘Jan’abay N.’,13.05.1951,’m’,29,’worker’,35000.29,’2243110’);
Барлық қатарлы өзгериўшилер апострафларға алыныўы керек.Егер биз қандай да бир өзгериўшиниң мәнисин билмесек, киритилгенде оны түсирип қалдырыўымыз мүмкин., компьютер автомат түрде оның орнын бослық пенен толтырады.
Мысалы:
INSERT INTO mical(Name, Dob, Pol, Los, Dept, Salary)
Valies (‘Sag’alatdin T.’,02.07.1952,’m’,28,’worker’,36000);
Бундай жағдайда Telnno орны компьютер жәрдеминде, тап олардың тәртиби анықланбағанша, пробел ҳәм ноллер менен толтырылады. Айырым мәнислер түсип қалған болса оларды Null менен толтырыў мүмкин.