Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
SQL.docx
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
55.9 Кб
Скачать

Қазақстан Республикасының Білім және Ғылым Министрлігі

Орталық Қазақстан Академиясы

Педагогика және әлеуметтік жұмыс факультеті

Информатика және химиялық технология кафедрасы

Пән: «Деректер қорының теориясы»

Тақырыбы: «SQL тілінің негіздері»

Орындаған: Бауыржан Қ.

Тобы: ИН-15-02

Тексерген: аға оқытушы Валиева Д.Г

Қарағанды 2017 ж

Мазмұны

Кіріспе ................................................................................................................

3

1 SQL тілінің негізі және оның даму тарихы .................................................

4

1.1 SQL тілінің қысқаша тарихы .....................................................................

9

2 SQL тіліндегі командалар категориясы ....................................................... 17

3 SQL SERVER деректер қоймасы .................................................................. 12

Қорытынды ........................................................................................................ 24

Пайдаланылған әдебиеттер тізімі.....................................................................

26

Кіріспе

SQL (Structured Query Language) тілі қазіргі уақытта шындығында «реляциялық» база мәліметтеріне кіруге рұқсат ететін стандартты тіл болып қалыптасқан. Көптеген реляциялық емес жүйелерде де қазіргі уақытта реляциялық мәліметтерге рұқсат ету құралдары бар. Әртүрлі база мәліметтерін басқару жүйелер арасындағы қосымшалардың тасымалдануы стандарттау мақсаты болып табылады.

SQL-да мәліметтерді кестемен көрсетуге хабардар операция тұжырымдамасын жүзеге асыру шамалы сөйлемдер жиынтығы бар (30-дан кем) жинақы тілді жасауға мүмкіндік берді. SQL интерактивті әрі (мүдделерді орындау үшін), әрі кіріктірме (қолданбалы бағдарламалар құру үшін) болып пайдалануы мүмкін. Онда бары:

- мәліметтерді анықтайтын сөйлемдер (база мәліметтерін анықтау, сондай-ақ кестелер мен индекстерді анықтау және жою);

- мәліметтерді таңдау сөйлемдері;

- мәліметтерді түрлендіру сөйлемдері (мәліметтерді қосу, жою және өзгерту);

- мәліметтерді басқару сөйлемдері (мәліметтерге рұқсат ету артықшылығын ұсыну және болдырмау, транзакцияны басқару және басқалар).

Сондай-ақ, бұл сөйлемдерде ол келесі амалдарды орындауға мүмкіндік береді:

- арифметикалық есептеулер (әртүрлі функционалды қайта құруларды қоса), мәтін жолдарын өңдеу және арифметикалық қалыптасқан сөздер мен мәтіндердің мағыналарын салыстыру операциясын орындау;

- кесте ішіндегісін басып шығаруға немесе экран дисплейіне шығаруда жолдарды және (немесе) бағандарды тәртіпке келтіру;

- көзге елестетуді құру (виртуалды кесте), пайдаланушыларға база мәліметтерінде олардың көлемін үлкейтпей-ақ, мәліметтерге деген өз көзқарасына мүмкіндік береді;

- кесте ішіндегісін сұрауы бойынша шығаруды есте сақтау, бірнеше кестені немесе басқа кестеде елестету (иеленудің реляциялық операциясы). [1]

1 Sql тілінің негізі және оның даму тарихы

SQL тілінің негізі және оның даму тарихы 60- жылдардың аяғында IBM фирмасының кызметкері Эдгар Кодд алғаш рет реляциялық деректер коймасының кұрылымдық принциптерін тұжырымдады және SEQUEL тілін (Structured English Query Language- кұрылымданған сұраныстардың ағылшынша тілін) жасап шығарды. Кейінірек бұл атау SQL (Structured Query Language- кұрылымданған сұраныстар тілі) болып кысқартылды. SQL тілі деректердің реляциялық үлгісін өңдеу нәтижесінде пайда болған тілдердің бірі болып табылады, ол қазіргі уақытта өте кең қолданылады және реляциялык деректер корының стандартты тіліне айналды. SQL тілінің алғаш стандарты 1986 жылы (SQL-86 деп аталды) және 1987 жылы шықты және 1989 жылы ол аздап өзгертілді. Одан кейін ДҚБЖ құрастырушыларының тілді өзгертуі 1992 жылы жаңа кеңейілген стандартын қабылдауға әкелді. (ANSI SQL-92 немесе жай SQL2). Одан кейінгі стандарты- SQL: 1999 (SQL3). Қазіргі кезде аздап өзгеріске ұшыраған 2003 жылы қабылданған SQL:2003 стандарты колданылады.

SQL стандартының даму тарихы

Жылы

Атауы

Баскаша атауы

Өзгерісі

1986

SQL-86

SQL-87

Стандарттың 1- нұскасы 1986 жылы Америкалык үлтгык стандарттар инстатутында (ANSI) кабылданып, 1987 жылы стандарттардыц Халықаралык ұйымы (ISO) оны халықаралық тіл ретінде бекітті.

SQL-89

FIPS 127-1

Алдыңғы стандарттың аздап өзгертілген түрі.

1992

SQL-92

SQL2, FIPS 127-2

Маңызды өзгерістер (ISO 9075); SQL-92 стандартының Entry Level деңгейі FIPS 127-2 стандарт ретінде пайда болды.

1999

SQL: 1999

SQL3

Мұнда рекурсивті сұраныс, триггерлерді колдау, базалық процедуралық кеңейтілу, деректердің скаляр емес типі және кейбір объектілі- бағдарлы мүмкіндіктер қосылды

2003

SQL:2003

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

2006

SQL:2006

XML- деректермен жұмыс неғұрлым кеңейтілді. SQL және XQuery сұраныстарын бірігіп колдану мүмкіндігі пайда болды.

2008

SQL:2008

Терезелік функциялардын мүмкіндігі кеңейтіліп, SQL:2003 стандартының кейбір кемшіліктері жойылды.

Сонымен қатар, SQL тілі АҚШ-та акпаратты өңдеудің федеральды стандарты болып табылады (FIPS - Federal Ini'ormation Processing Standard) және осыған сәйкес бұл оның негізгі талаптарының бірі болып отыр. Мұндай талаптар есептеу техникасына қатысты көптеген үлкен мемлекеттік келісім шарттар құрамына енеді. Еуропада UNIX операциялық жүйесі негізінде көшірмелі программалау орталарына арналған X/OPEN стандарты кұрамына SQL деректер қоймасымен жұмыс жасау мүмкіндігіне ие болу стандарты ретінде кіргізіледі. SQL Access Group компыотерлік құрылғылар және деректер қоймаларымен камтамасыз ету консорциумы SQL-re арналған шақыру функцияларының стандарт интерфейсін анықтады. Ол Microsoft компаниясының ODBC протоколының негізі болып табылады және X/OPEN стандартына да кіргізіледі.

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

SQL тілі көптеген ДҚБЖ- ніц негізі болып табылады, себебі ол деректерді физикалық құрылымдауға және дискіге жазуға, дискіден оқуға жауап береді, ДҚБЖ-нің басқа компоненттерінен және қолданушы қосымшасынан SQL- сұраныс қабылдауға мүмкіндік береді. Сондықтан, SQL қолданушыға реляциялық деректер қоймасында орналасқан ақпараттарға қол жеткізуді жүзеге асыратын қуатты құрал болып табылады. SQL тілі дерекгерге сұраныстарды орындау үшін де, қолданбалы бағдарламаларды құру үшін де қолданылуы мүмкін.

SQL тілі келесі функцияларды орындайды:

Деректерді ұйымдастыру. SQL қолданушыға деректердің құрылымын өзгертуге, сонымен қатар деректер қоймалары элементтері арасында қарым-қатынас орнатуға мүмкіндік береді.

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

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

Мүмкіндіктерді басқару. SQL-дің көмегімен қолданушының ақпаратты оқу немесе өзгерістер енгізу бойынша мүмкіндігін шектеуге жіне келеңсіз жағдайлардан сақтануға болады.

Деректерді бірігіп қолдану. SQL бір уақытта бірнеше қолданушыға бір- біріне кеселін тигізбейтіндей жағдайда деректерді колдана отырып жұмыс жасауына мүмкіндік береді.

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

SQL ДҚБЖ-мен байланыстағы ең куатты тіл болып саналады.

SQL - бұл COBOL, FORTRAN немесе С типіндегі толық емес компьютерлік тіл. SQL-де шартты тексеретін IF операторы жоқ, жолдарға көшуді ұйымдастыратын GOTO операторы да жоқ және циклді ұйымдастыратын DO немесе FOR операторлары да қарастырылмаған.

SQL- деректер коймасын баскаруға арналған 30-ға жуык операторы бар ішкі тіл болып саналады. SQL операторлары базалык тілдердің, мысалы COBOL, FORTRAN немесе С тілдерінің кұрамына енеді де, деректер қоймасымен жұмыс жасауға мүмкіндік береді. SQL - бұл төменгі деңгейде кұрылымданған тіл, оны жоғары деңгейде кұрылымданған тілдер С, Pascal-мен салыстыруға болмайды. SQL операторлары ағылшын тілінің сөйлемдерін елестетеді және оның кұрамында оператор мағынасына әсер етпейтін, бірақ оқуға жеңіл сөздер қолданылады.

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

SQL тілінің артықшылықтары:

- платформааралық, яғни нақты ДҚБЖ-лерге тәуелсіздігі;

- стандарттың бар болуы; - IBM (СУБД DB2) компаниясының қолдауы; - Microsoft (СУБД SQL Server, ODBC протоколы және ADO технология) компаниясыньң тарапынан қолдау көрсетуі;

- реляциялық негізі; - жоғары деңгейлі құрылымы;

- арнайы интерактивті сұраныс орындау мүмкіндігі;

- ДҚ- на программалық қатынау мүмкіндігі; - деректерді әртүрлі көрсету мүмкіндігі;

- ДҚ- мен жұмыс жасау үшін арналған тіл ретінде толықтығы;

- деректерді динамикалық анықтау мүмкіндігі;

- клиент/сервер архитектурасын колдауы;

- корпоративті қосымшаны колдауы;

- объектілі- бағдарлы технологияны колдауы;

- интернет деректеріне қатынау мүмкіндігі;

- Java (JDBC протокол) тілімен интеграцияланатыны;

- өндірістік инфрақұрылымының болуы.

Аталған факторлардың кейбіреуін ашып карастырайық:

Нақты ДҚБЖ-ге тәуелсіздігі

Барлық алдыңғы қатарлы ДҚБЖ-ін шығарушылар SQL тілін қолданады. Реляциялық деректер қоймасын және онымен жұмыс істейтін бағдарламаларды бір ДҚБЖ-нен екіншісіне аздаған өзгерістер енгізіп қана көшіруге болады. Сұраныстар кұруға, есептер жасауға және қосымшалар дайындауға арналған бағдарламалық жабдықтар дербес компьютерлердің 6 ДҚБЖ-нің құрамына ене отырып, көптеген типтегі реляциялық деректер қоймаларымен жұмыс істейді. Осы бағытта SQL нақты ДҚБЖ-нен тәуелсіздікті қамтамасыз етеді және бұл оның танымалдылығының басты себебі болып табылады.

IBM компаниясының қолдауы (DB2 ДҚБЖ) SQL-ді IBM компаниясының ғалымдары ойлап шығарды және компания оны көптеген бағдарламалық қамтамасыз ету пакеттерінде қолданады. Бұған дәлел ретінде компанияның DB2 ДҚБЖ өнімін алуға болады. IBM компаниясының көптеген компьютерлері SQL-re негізделген: дербес компьютерге арналған PS/2 жүйесі, орта буынды AS/400 жүйесі, UNIX базасының RS/6000 жүйесі, сонымен катар, үлкен ЭЕМ-дерге арналған MVS және VM операциялық жүйелері. IBM фирмасы тарапынан үлкен қолдау табуы оның пайда болған кезінен-ақ қолданысқа түсуіне ықпалын жасады және деректер қоймасы мен бағдарламалық жүйелерді шығарушы түрлі компанияларға даму бағытын көрсетуші рөлін атқарды.

ODBC протоколы және Microsoft компаниясы.

Microsoft компаниясы деректермен жұмыс жасау мүмкіндігін өзінің Windows операциялық жүйесінің маңызды бөлігі ретінде карастырады. Бұл компанияның деректермен жұмыс жасау мүмкіндігін қамтамасыз ету бойынша стандарты болып SQL тіліне негізделген ODBC (Open Database Connectivity - ашық деректер қоймасымен карым-қатынас) бағдарламалық интерфейсі табылады. ODBC протоколы Windows-тің Microsoft немесе баска да компаниялар жасап шығарған косымшаларында (электрондық кестелер, мәтіндік процессорлар, деректер қоймалары және т.б.) кеңінен колданылады. ODBC протоколының колданылуы көптеген ірі реляциялық деректер қоймаларымен қамтамасыз етіледі. Сонымен қатар, ODBC SQL Access Group консорциумының стандарттарына сүйенеді.

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

Ағьлшын тіліне ұқсайтын жоғары дәрежелі құрылымы

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

Интерактивті сұраныстар.

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

Деректер динамикалық анықталуы

SQL-дің көмегімен колданушы дсректсрмен жүмыс жасап жаткан ксзлін озінлс лс оныц күрьиіымыи лмиаммкалык түрде озгсртуге немссс кенеГтте болады. Нүл жүмыс істсу ксзінле оган озгерістер снгізу мүмкінлігііі берс алмайтын статикалық аныктау тілдерімен салыстырганла үлксп артмкшылык болып отыр. Осылайша SQL максималды иілгіштікті камтамасыз стслі. Клиент сервер ар.хитектурасы SQL - клнеігт/ссрпер косымшаларын жүзеге асырудыц бірден бір күралы болып табылалы. Бүл жерле SQL қолданушымен катынаста болатын клнсігттік жүйе жопе деректер коймасын баскаратын ссрвсрлік жүйе арасмнла әр жүйенің функиноналдық кызметгерін сактай отырып. баііллнысгмрушы буын кызмстін аткарады. Сонымен катар. SQL дсрбес компыотерлерге желілік серперлер немесе ірі деректер конмаларына катмсты клисіптік жүмыстарды аткаруга мүмкіндік берелі; бүл дербес комиькттсрлерлегі косымшаларлын комегімен корпоративті леректермен жүмыс жасауга мүмкіндік береді.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]