SQL тілі

I .ТАРАУ. SQL ТІЛІНІҢ ТЕОРИЯЛЫҚ АСПЕКТІЛЕРІ
1.1РЕЛЯЦИОНДЫ МӘЛІМЕТТЕР БАЗАСЫ
1.2МӘЛІМЕТТЕР БАЗАСЫН БАСҚАРУ ЖҮЙЕСІНДЕГІ SQL ТІЛІНІҢ
ТҮСІНІГІ, ЕРЕКШЕЛІКТЕРІ
1.3 SQL СТАНДАРТТАРЫ ЖӘНЕ ОНЫҢ ҚАЗІРГІ КЕЗДЕГІ ЖАҒДАЙЫ
II.ТАРАУ. ЖҰМЫС ІСТЕУ ПРИНЦИПТЕРІ
2.1 МICROSOFT SQL SERVER
2.2 SQL.СЕРВЕРДЕ ЖҰМЫС ІСТЕУ ПРИНЦИПТЕРІ
III.ТАРАУ. Лабораториялық жұмыс
Кез-келген мәліметтердің құрылымын қарапайым екі деңгейлі кестеде түрлендіруге болады. Мәліметтерді мұндай екі деңгейлі кестеде көрсетілуі пайдаланушы үшін де, машина үшін де ыңғайлы болып табылады. Қазіргі кезде көптеген ақпараттық жүйелер осындай кестелермен жұмыс істейді. Екі деңгейлі кестеден тұратын мәліметтер базасы реляционды деп аталады.
Реляционды әдістеменің негізгі идеясы - мәліметтердің еркін құрылымын қарапайым екі деңгейлі кесте түрінде көрсету болып табылады немесе басқаша айтқанда, мәліметтердің құрылымын бірыңғайлау.
Әлемдегі барлық мәліметтер базасының жүйесінің ішінде ең көп таралғаны - реляционды мәліметтер базасы. Бұл жүйелер осығанға дейінгі пайдаланушылардың реляциондық емес өнімдермен жұмыс істеуде пайда болған көпетеген мәселелерін шешуге қабілетті. Реляционды емес мәліметтер базасының программистері мен администраторлары ақпарат қалай құрылымдағандығын және ақпараттың мәліметтер базасында қалай көрсетілгендігін жете білуі керек болды, ал бұл қосымшаларды өңдеуді және программалардың модификациялауды маңызды дәрежеде күрделендірді Реляционды жүйелер жоғары деңгейде жұмыс істеуге қабілетті. Реляционды жүйеде мәліметтермен барлық операциялар DBMS (МББЖ) деп аталынатын программа арқылы жүзеге асырылады. МББЖ-сін тек қана жоғарғы деңгейдегі операторлар тілінің көмегімен басқаруға болады. Бірақ та, кейбір өнімдер бұрынғысынша өздерінің жеке тілдерінің терминдерін қолдайды. Бірақ, соған қарамастан SQL тілі технологиялық стандартқа айналды, оның базасында әйгілі немесе онша әйгілі емес реляциондық өнімдер құрылды.
Реляционды мәліметтер базасын басқару жүйесі (РМББЖ немесе RDMS) - бұл кесте түрінде сақталынатын, ақпараттарды басқаратын жүйе. Мұндай кестелер бір-бірімен өзара байланыста болады. Байланыстар бір кестенің мәліметтер жиыны мен сәйкесінше, басқа кестенің мәліметтер жиынының арасындағы қатынастардан кұрылады.
Мәліметтер базасын өңдегеннен кейін реляционды мәліметтер базасын нормалдауға кірісу керек. Нормализденген мәліметтер базасы келесідей шарттарға сәйкес болу керек:
- барлық кестелер кестедегі әрбір жолдың қасиеттері (мәліметтер типі) анықталатын атрибуттардан (бағаналар/өрістер) тұруы керек;
- кестенің әрбір жолы бөлек оқиғаны немесе пәнді анықтауы керек; - әрбір жол бір ғана жолмен бастапқы кілтті (primary key) қолдану арқылы идентификацияланады;
- бастапқы кілт бір немесе бірнеше бағаналардан тұруы мүмкін;
- бастапқы кілттің мәні null-мәнді болмауы керек.
        
        Қазақстан Республикасының  Білім  және  Ғылым  ... ...  ...  ...  университеті колледжі
Курстық жұмыс
Тақырыбы: SQL тілі
Орындаған:«Ақпараттықжүйелер»
мамандығының 3 курс
студенті
Сағымбекова В.Т.
Тексерген:Тұрарбек Ә.Т.
Алматы, 2007 жыл
ЖОСПАР:
I -тарау. SQL ... ... ... мӘліметтер базасы
1.2МӘЛІМЕТТЕР БАЗАСЫН БАСҚАРУ ЖҮЙЕСІНДЕГІ SQL
тілінің
ТҮСІНІГІ, ЕРЕКШЕЛІКТЕРІ
1.3 SQL стандарттары жӘне оның қазіргі кездегі
жағдайы
II-ТАРАУ. ЖҰМЫС ІСТЕУ ... ... sql ... ... ... ... ... Лабораториялық жұмыс
I -тарау. SQL тілінің ТЕОРИЯЛЫҚ АСПЕКТІЛЕРІ
1. Реляционды мӘліметтер базасы
Кез-келген мәліметтердің құрылымын ... екі ... ... ... ... ... екі деңгейлі кестеде көрсетілуі
пайдаланушы үшін де, машина үшін де ыңғайлы болып табылады. ... ... ... ... ... ... жұмыс істейді. Екі деңгейлі
кестеден тұратын мәліметтер базасы реляционды деп аталады.
Реляционды әдістеменің негізгі идеясы - ... ... ... екі деңгейлі кесте түрінде көрсету болып табылады немесе басқаша
айтқанда, мәліметтердің құрылымын бірыңғайлау.
Әлемдегі барлық мәліметтер ... ... ... ең көп ... ... ... базасы. Бұл жүйелер ... ... ... емес ... жұмыс істеуде пайда болған
көпетеген мәселелерін шешуге қабілетті. Реляционды емес ... ... мен ... ... ... және ... ... базасында қалай
көрсетілгендігін жете білуі керек ... ал бұл ... ... ... ... маңызды дәрежеде күрделендірді
Реляционды жүйелер жоғары деңгейде ... ... ... ... мәліметтермен барлық операциялар DBMS (МББЖ) деп ... ... ... асырылады. МББЖ-сін тек қана жоғарғы ... ... ... ... ... ... та, ... өнімдер
бұрынғысынша өздерінің жеке тілдерінің терминдерін қолдайды. Бірақ, ... SQL тілі ... ... ... оның базасында әйгілі
немесе онша әйгілі емес реляциондық өнімдер құрылды.
Реляционды мәліметтер базасын басқару жүйесі ... ... RDMS) - ... ... ... ақпараттарды басқаратын жүйе. Мұндай кестелер
бір-бірімен өзара байланыста болады. Байланыстар бір кестенің мәліметтер
жиыны мен ... ... ... ... ... ... кұрылады.
Мәліметтер базасын өңдегеннен кейін реляционды ... ... ... ... ... ... базасы келесідей
шарттарға сәйкес болу керек:
- барлық кестелер ... ... ... ... ... типі)
анықталатын атрибуттардан (бағаналар/өрістер) тұруы керек;
- кестенің әрбір жолы бөлек оқиғаны немесе ... ... ... ... жол бір ғана ... бастапқы кілтті (primary key) қолдану арқылы
идентификацияланады;
- ... кілт бір ... ... ... ... ... ... кілттің мәні null-мәнді болмауы керек.
1-сурет. Реляционды мәліметтер базасы
Мұндағы:
❖ Қатынас – Кесте (кейде Файл)
❖ Кортеж – Жол (кейде Жазылым)
...... ... ... ... қатынастармен байланыстырылған кестелер
тобы ретінде бейнеленген. Жақсы МБ-сы ... ... ... ... Әрбір кесте бастапқы кілт деп аталынатын
бағананы қолданады.
Мәліметтер арасында байланыс кестеде екі ... де ... ... ... ... ... Көптеген қатынастар
бастапқы және сыртқы кілттерге арналған арнайы шектеулердің көмегімен
құрылады. Анықтама ... ... кілт ... үшін ... болып табылады
және кестедегі барлық мәліметтер осы өріс ... ... ... және бір ... келтіріледі. Бастапқы кілттің өрісінде NULL
мәнін қолдануға болмайды. Сыртқы кілт – бұл басқа кестенің бастапқы кілтіне
сәйкес келетін өріс. ... ... ... NULL мәнін қабылдай алады.
“Бастапқы кілт” қатынасымен өзара байланысқан кестеден ... ... ... ... арасында ақпаратты логикалық түрде бөлу оңайға
түседі.
Мәліметерде ... ... ... ... файлдарды
қарастырған кезде қолданылатын жалпақ файл деп ... ... ... ... ... іздегенде SQL тілін
қолдануға болады.
Бұл тіл қандай ақпарат керек екендігін нақты ... ... ... SQL ... ... операторында көрсетілген шарттарды
қанағаттандыратын көптеген ақпараттарды береді.
Реляционды мәліметтер базасы – ... ... ... ... ... ... ... Бірақ та, пайдаланушылар мұндай МБ-н
кестелердің жиынтығы ретінлде қабылдауы ... ... ... ... ... кесте бір типті жолдардан тұрады және олардың бірегей аттары
болады.
❖ Жолдарда ... ... ... ... мен ... топтар жіберілмейді) болады.
❖ Кестенің жолдары бір-бірінен міндетті түрде ең болмағанда бір ... бұл ... ... ... ... ... береді.
❖ Кестенің бағаналарына аттар ... және ... ... біртектес мәндері (даталар, фамилиялары, ... ... ақша ... ... МБ-ң ... ... құрылымы мәліметтердің нақты мәндері түрінде
беріледі және мұндай әдіс жалғыз болып табылады. ... бір ... ... ... да бір ... ... немесе
көрсеткіштер жоқ.
❖ Кестемен операцияларды орындаған кезде оның жолдары мен бағаналарын оның
ақпараттық мазмұнына қарамастан ... ... ... ... аттары мен оның бағаналарынаң аттарының болуы бұған негіз болып
табылады.
2. МӘЛІМЕТТЕР БАЗАСЫН БАСҚАРУ ЖҮЙЕСІНДЕГІ SQL ... ... ... ... мен ... ... ... өзара
әсерлесуі үшін олар ортақ тілді қолдануы керек. Бұл тіл ... ... ... ... ... ... SQL деп ... SQL -
компьютердің мәліметтер базасындағы мәліметтерді оқуға және ... ... SQL – бұл ... ... ... ... үшін ... программалау тілі. SQL тек нақты бір түрдегі
мәліметтер базасымен ғана, яғни ... ... ... ғана ... ... ... ... өзара әрекеттесу тілі 1970-ші жылдардың ортасында IBM
корпорациясының өңдеуімен пайда болды және ... ... ... ... ... ... өңделінді. Тілдің бастапқы аты SEQUEL
(Structured English Query Language) деп ... ол осы ... ... ... ... ... ... тілдің басты мақсаты пайдаланушының
реляционды МБ-да сұратуларды ... ... және ... ... ... Бұл ... МБ-ң объекттеріне кіру мүмкіндігінің
синхронизациялау құралдары болған жоқ.
SQL – ... ... және ... ... ... тіл. Сонымен
қатар, SQL реляционды мәліметтер базасын басқару үшін қолданылады.
SQL бұл МББЖ-ң жүйесі немесе ... ... өнім ... ... ... ... ала алмаймыз, өйткені SQL МББЖ-ң бір бөлігі.
SQL тілінің ... ... бір ... ... ... басқарушы барлық
мердігерлер SQL-ді қолданады. SQL-ді қолдамайтын ... МББЖ ... сене ... ... мәліметтер
базасын және сонымен бірге жұмыс істейтін программаларды
минималды ... ... ... бір ... ... МББЖ-ға
тасуға болады. Дербес компьютерлерге арналған, МББЖ-ң құрамына
кіретін ... ... ... ... құруға
арналған программалар, есеп берудің генераторлары және
қосымшаның ... әр ... ... ... жұмыс істейді. Осылайша, SQL нақты бір ... ... ... ал бұл оның ... ... ... бірі ... табылады.
• бір есептеуші жүйеден басқа жүйеге ... ... әр ... есептегіш жүйелерге программалық өнімді
ұсынады: дербес компьютерлер мен жұмыс станцияларынан локальді
желілер, миникомпьютерлер мен ... ... ... SQL ... және бір рет ... ... есептелген
қосымшалар өзінің ... ... ... ... ... ... мәліметтер базасына арналған
қосымшаларды дербес компьютерлерде басында модельдеп ... ... ... ... ... ... ... ауыстыруға болады.
• стандарттардың бар болуы. SQL тілінің ... ... ... ... ... (American National
Standards Institute - ANSI) және ... ... ... ... Standards Organization –
ISO) 1986 жылы жарияланған болатын және 1992 жылы ... ... ... ... көрсетуі және ODBS хаттамасы.
Microsoft компаниясы ... ... кіру ... Windows операционды жүйесінің маңызды бөлігі ретінде
қарастырады. Бұл компанияның мәліметтер базасына ... ... ету ... ... ... ODBS (Open
Database Connectivity – ашық мәліметтер базасымен әрекеттесу)
табылады. ODBS – бұл SQL-ге ... ... ... ... ... ... МБ-сын
басқарушылардың барлығымен қамтамасыз етіледі.
• реляционды негіздің бар болуы. SQL ... ... ... ... ... да, ... реляционды
модельмен көрсету әйгілі болған кезде SQL де ... ... ... ... кестелік құрылымы интуитивті
түсінікті, сондықтан да SQL тілі ... және оны ... ... ... ... еске ... жоғарғы деңгейдегі құрылымның
бар болуы. ... ... ... ... ... ал бұл оны зерттеу мен ... SQL ... ... ... ... ... ... мәліметтерді бейнелейді. Реляционды мәліметтер
базасының кестелері мен бағаналарында ұзақ аттар ... ... SQL ... ... олардың
аттарына сәйкес келетіндігін білдіреді, сондықтан оларды
қарапайым, ... ... ... ... ... ... ... кіру мүмкіндігімен қамтамасыз етуі.
Программистер SQL тілін МБ-сын ... ... жазу үшін ... Программа кіру мүмкіндігіне
арналған дәстүрлі мәліметтер базасында тек қана ... ... ал ... ... ... үшін бұл
екі кіру мүмкіндік режимдерінің арасында ... да ... ... ... ... ... мәліметтерді динамикалық ... ... ... ... ... ... ... SQL-дің көмегімен мәліметтер ... ... ... ... және ... ... Осылайша,
SQL мәліметтер базасын максималды иілгіштікпен қамтамасыз ... ... ... ұлғаюы мен құрылымының күрделенуі
және ақпараттық жүйелерді пайдаланушылардың ... ... - ... ... ... түсінуге жеңілірек реляционды (кестелік) МББЖ-н кең
түрде ... әкеп ... ... бір ... кіру ... ету үшін ... пайдаланушыларға, көбінесе бір-бірінен және
мәліметтер ... ... ... жеткілікті түрде алыс орналасқан
пайдаланушыларға МББЖ-ң тораптық мультипайдаланушы түрі ... ... ... ... ... бүтіндігі (дұрыстылығы)
және мәліметтердің ... ... ... ... кіру
мүмкіндігінің санкционирлену мәселелері шешіледі.
SQL-дің ерекше өзгешелігі – SQL-дің комьютерлік ортадан
(операциялық ... және ... ... ... ... SQL-мен жұмыс істеу схемасы ... Осы ... ... ... ... ... ... мәліметтер базасы болады.
Егер де МБ-сы бизнеске ... ... онда ... ... ... ... ... мүмкін. Дербес ... ... ... телефондар және адрестер туралы ақпараттар сақталынуы
мүмкін. ... ... ... ... ... МББЖ деп
аталады.
2-сурет. SQL-мен жұмыс істеу схемасы
Егер де ... ... ... оқу ... ... ол
мәліметтерді МББЖ-ң көмегімен SQL-ден сұратады. SQL сұратуды өңдеп, қажетті
мәліметтерді ... да, оны ... ... ... ... нәтижелерді алу процесі мәліметтер базасына сұрату деп аталады, ... ... ... та, бұл ат ... ... ... ... Бүгінгі күні SQL
жай сұратуларды құратын құрал ғана емес, бұл тілдің ... да ... бар. ... оқу бұрынғысынша SQL-дің ең маңызды
қызметтерінің бірі болғанымен, ... ... ... пайдаланушыға
көрсететін барлық функционалдық мүмкіндіктері жүзеге асырылуы үшін ... ... ... ... ... ... SQL пайдаланушыға көрсетілетін мәліметтердің
құрылымын өзгертуге, сонымен ... МБ-ң ... ... ... ... ... оқу. SQL ... ... ... МБ-ғы
мәліметтерді оқуға және оларды қолдануға мүмкіндік береді.
Мәліметтерді өңдеу. SQL ... ... ... ... ... яғни ... базасына жаңа мәліметтерді қосуға,
сонымен қатар мәліметтер базасындағы ... ... ... ... береді.
Мәліметтерге кіру мүмкіндігін басқару. SQL-дің ... ... ... ... өзгертуін шектеуге болады, сонымен
қатар мәліметтерді санкцияланбаған кіру мүмкіндігінен қорғауға болады.
Мәліметтерді бірігіп қолдану. SQL ... ... ... ... ... ... үшін ... бірігіп қолдануын үйлестіреді.
Мәліметтердің бүтіндігі. SQL ... ... ... ... мүмкіндік береді, яғни жүйенің бас тартуынан немесе
келісілмеген ... ... ... ... SQL ... жӘне оның ... кездегі жағдайы
Қазіргі кезде нарықта SQL тілін мойындаудың ең маңызды қадамдарының
бірі - осы ... ... ... ... ... SQL ... алғанда Американың Ұлттық Стандарттар Институтымен (American National
Standards Institute — ANSI) және Стандарттар Бойынша Халықаралық ... ... ... — ISO) бекітілген ресми стандарттар
айтылады. Бірақ та, SQL-дің ... да ... ... бар – ... IBM ... DB2 ... жүзеге асырылған стандарты және
UNIX аумағында SQL-ге ... X/OPEN ... ... ... ресми стандартымен жұмыс 1982 жылы басталды, ол кезде
ANSI өзінің клиентіне ХЗН2 реляционды мәліметтер базасына стандартты тілді
құруға тапсырма ... ... ... ұсынылған әр түрлі тілдердің
артықшылықтары талқыланды. Бірақ та, сол ... SQL іс ... ... еді, ХЗН2 ... ... ... осы тілді таңдауымен
тоқтатты және SQL-дің стандартталуымен айналыса бастады.
Нәтижесінде құрастырылған стандарт үлкен дәрежеде SQL ... ... ... болатын, бірақ та бұл диалекттен маңызды
ерекшеліктері болды. Бірнеше ... ... 1986 жылы ... ... ... Х3.135 ANSI ... түрінде бекітілген болатын, ал 1987 жылы
ISO стандарты түрінде бекітілген болатын. ... ... ANSI/ISO ... үкіметімен ақпаратты өңдеу бойынша (FIPS — Federal Information
Processing Standard) АҚШ-ң федералды ... ... ... ... 1989 жылы ... ... әдетте бұл стандарт “SQL-89” немесе
“SQLI” стандарты деп аталынады.
ANSI және ISO стандарттары бойынша комитеттің көптеген мүшелерінен ... ... ...... көрсетті, олардың әрқайсысында SQL-
дің өзіндік нұсқасы құрастырылған болатын. Адам тілінің диалектісі ... ... ... де ... бір-біріне ұқсас болған, бірақ ... ... ... келмейтін. Көптеген жағдайларда комитет бұл
сәйкессіздіктерге мән ... және ... ... ... ... Бұл әдіс ... ... келетін көптеген SQL тілінің жүзеге асуына
себеп болды, бірақ та ... ... ... ... ... ... ... шешу үшін ANSI комитеті SQL2 стандартын ... ... ... салыстырғанда SQL2 жобасы нақты коммерциялық өнімдердің
шектеуінен шығатын ... ... Ал одан ... SQL3
стандартында одан да терең өзгерістер енгізілді. Нәтижесінде ұсынылған SQL2
және SQL3 стандарттары бастапқы стандартпен салыстырғанда бір-біріне қарама-
қарсы болды. SQL2 ... ... ... және 1992 ... қараша
айында бір жола қабылданды. 1986 жылғы бірінші стандарт жүз парақтай орынды
алса, SQL2 ... ... алты ... парақтан тұрды.
SQL2 стандартына қарамастан бүгінгі күндегі ... ... ... диалекттерін қолдайды. Сонымен қатар, МББЖ-ң мердігерлері
өздерінің өнімдеріне жаңа мүмкіндіктерді ... және ... ... ... ал бұл ... одан да ... Бірақ та
SQL-дің негізі қатаң түрде стандартталған. МББЖ-ң мердігерлері өздерінің
өнімдерін SQL-89 ... ... ... өте келе SQL2
стандартына да ... ... кең ... ... ... стандарты емес.
X/OPEN европалық мердігерлер тобы “көшірілетін қосымшалар аумағы” үшін UNIX
негізінде SQL–дің ... ... ... X/OPEN ... ... ... нарығында үлкен рөл атқарады, бұл
стандарттың негізгі мәселесі - әр ... ... ... ... ... ... ... табылады.
Бақытсыздыққа орай, X/OPEN стандарты ANSI/ISO стандартынан өзгешеленеді.
Сонымен қатар, IBM ... SQL-ге ... Systems ... (қолданбалы программаның қосымшасы) спецификациясын қосты және
барлық өнімдер SQL диалектісіне аударылатындығына уәде ... ... та ... Хотя данная спецификация и не оправдала надежд на унификацию
линии продуктов компании IBM, движение в ... ... SQL в ... ... DB2 ... основной СУБД компании IBM ... ... ... ... ... DB2 и для ... ... системы для персональных компьютеров), и для
линии серверов и ... ... RS/6000, ... под ... ... ... ... DB2 языка SQL является мощным стандартом де-факто.
Мәліметтер базасының технологиясында ресми ... ... ... бар. Бұл ... ... ... әсерлесуде болу қабілеттілігі –
бұл әдістердің ... әр ... ... ... ақпараттарды алмастыра
алады (ереже бойынша желіде). 1989 жылы бірнеше мердігерлер осы ... үшін ... SQL Access Group ... ... 1991 ... RDA (Remote Database Access — ... ... өшірілген кіру
мүмкіндігі) спецификациясын жариялады. Бұл спецификация OSI ... ... Бұл OSI ... кең түрде таралған жоқ, сондықтан да
ол нарыққа мағынасыз әсер етеді.
Бірақ та, SQL Access Group-ң ... ... ... үлкен орын
алады. Microsoft компаниясының қайсарлы талаптарының нәтижесінде SQL Access
Group консорциумы стандартқа SQL функцияларды ... ... ... ... өңдеулеріне негізделген CLI (Call Level Interface)
спецификациясы 1992 жылы жарыққа ... Осы жылы CLI ... ODBC (Open Database ... — ашық ... ... ... жеке спецификациясы жарияланған болатын. Microsoft-тың
нарықтағы орнының арқасында, яғни SQL Access ... ... ... ... ODBC ... стандартына айналды. 1993 ... Apple және ... ... MacOS және ... ... ... ... стандартының пайда болуы SQL-дің және оның ... ... ... ... ... ... мәлімдемесіне
алып келді. Шындығында да, SQL-89 стандартының ... және ... ... айырмашылық жеткілікті түрде үлкен болды,
сондықтан да, ... ... ... ... ... SQL-89 ... ... керек болды. SQL2 стандартында көбісі жойылған ... ... ... қосады:
Қателердің кодтары. SQL-89 стандартында қателер болған жағдайда SQL
операторларын ... ... ... және ... ... ... ... кодтардың жеке терімі қолданылады. SQL2
стандартында ... ... ... ... ... SQL-89 ... ... типінің минималды
жиыны анықталған, бірақ та онда кең ... және ... ... жоқ, ... ауыспалы ұзындықтың символдық жолдары, уақыт пен
дата, сонымен қатар, ақша ... SQL2 ... бұл ... ... та “жаңа” мәліметтер типі жоқ, мысалы, графикалық және мультимедиялық
объекттер.
Жүйелік ... SQL-89 ... ... құрылымы туралы
ақпараттан тұратын жүйелік кестелер қарастырылмады. Сондықтан да, ... жеке ... ... құру ... болды. SQL2 стандартында
жүйелік кестелер стандартталған.
Интерактивті SQL. SQL-89 стандартында қолданбалы ... тек ... SQL ... SQL ... ғана ... ... ... МБ-на сұратуларды орындауға арналған select
операторы стандартта жоқ.
Программалық интерфейс. ... ... COBOL, FORTRAN және ... ... тілдерінде жазылған программаларда SQL-ді ... ... ... Бұл әдіс бірде-бір коммерциялық өнімде
қолданылмайды, ал программалық интерфейстерде ... ... ... ... ... программалау тілдері үшін (бірақ та, ... ... ... ... SQL ... ... SQL. SQL-89 стандартында жалпы ... ... үшін ... есеп беру ... және ... құру және
орындау программалыры) SQL-дің элементтері бейнеленбеген. Бірақ та,
динамикалық SQL ... ... бұл ... ... ... ... ... әр түрлі жүйелерде үлкен айырмашылықтары бар. SQL2-ге динамикалық SQL
стандартына кіреді.
Семантикалық айырмашылықтар. ... ... ... бір ... ... ... біріккен МББЖ-де екі
әр түрлі қорытындылар жиынтығы ... ... SQL-89 ... ... ... ... символының жүйелілігі еске ... ... ... ... ... (ASCII ... ... (EBCDIC кодировкасымен) бұлт сұратуды орындауда
өзгешеленетін болады. SQL2 стандарты программаға ... ... ... ... ... ... мүмкіндік береді.
Мәліметтер базасының құрылымы. SQL-89 стандартында мәліметтер ... ... және ... ... ... ... ... SQL
анықталған. Мәліметтер базасының атынының және оларға бастапқы қосылудың
бөлшектері қатты өзгешеленеді және өзара сыйыспайды. SQL2 ... ... ... бұл ... бір ізге ... бірақ та барлық айырмашылықтарды
толық жоя алмайды.
Көрсетілген айырмашылықтарға қарамастан, 1990-шы жылдардың басында әр
түрлі МББЖ-ң арасында қосымшалардың көшірілуін жүзеге асыратын ... ... бола ... ... та, ... МББЖ-н қолдайтын мұндай
программалар үшін арнайы конвертер талап ... ... ... ... ... ... ... SQL2 стандартының және ODBC жобасының
негізгі стандарты болып табылады. Бірақ та, ... ... және ... ... кіру ... болашақтың ісі болып қалады.
II тарау. SQL-серверде жұмыс істеу принциптері
2.1 Мicrosoft sql server
SQL-дің бірнеше әр түрлі ... бар. ... SQL ... - SQL деп аталатын версияны қолданады.
Microsoft SQL Server - Windows NT ... ... ... ... ең ... сервер. Microsoft SQL Server - реляционды
мәліметтер базасын ... ... Бұл ... ... ... ... деп ... екі құрылымды архитектураларының бірі. Клиенттік
программалар көбінесе пайдаланушылар өңдеген қосымшаларды немесе Microsoft
Access ... ... ... ... ... білдіреді.
Клиентті сервермен байланыстырушы құрал - SQL болып табылады. Көптеген
файл-сервер негізіндегі желілік ... ... ... ... кезде өте
көп артық ақпараттар береді. Бұл жүйемен салыстырғанда клиент-сервер жүйесі
тек қана ... ... ... ... Ал бұл ... ... ... тиімдірек құрал болуына мүмкіндік береді.
Microsoft SQL Server-дің ең маңыздылы ... бірі ... ... ... ... қызметтерді автоматтандыруға арналған барлық компьютерлік
программаларды бірнеше типтердің қосымшалары ретінде ... ... ... ... ... ... ... немесе баспа жүйесі.
Microsoft SQL – жаратылысы жағынан ақпаратқа бейімделген және ... ... ... ... сату ... ... тағы басқаларды қоса алады. SQL қосымшаларын, әсіресе клиент-сервер
архитектурасын ... ... ... ... жеңілдігі. Көптеген клиент-сервер архитектурасының
қосымшасын ... өте ... ... архитектурасының қосымшасы
интуитивті түсінікті интерфейсті қолдайды және бастапқы қағаз бланктердің
бейнесін экранда жиі ... ... ... ... қолмен
толтыруға дағдыланған сатушылар қосымшаны қолданғанда ... ... ... ... көреді, ал бұл оларға оңайға түседі. SQL-
дің көмегімен серверлік қосымшаның клиенттік ... ... ол ... мәліметтерден құрылады. Жай экрандық бланктің барын ... ... ... ... ... ... керек тауарлар туралы
ақпараттырды жиі қарастырудың қажеті жоқ ... ... ... ... ұсынылады, сондықтан да сатушы тізімнен қажетті
пайдаланушыны, ... ... ... ... ... ... ... керек.
Бұл компанияның МБ-ң бүтіндігін қамтамасыз ... ... ... және ... ... бағада сатылуына дол бермейді. Бланк
толтырылып серверлік қосымшаға жіберіледі, одан ... ... үшін ... үшін ... ... ... қолданғанда клиенттік
қосымшада сатушының немесе қызмет етушінің еңбек өнімділігі тез көбейеді.
Сонымен ... ... ... және ... ... ... ... Microsoft SQL Server-де екі ... ... ... және ... ... ... жүйелік кестелер
әрбір мәліметтер базасында сақталынады және МБ-ң каталогының кестелері деп
немесе жүйелік кестелер деп аталады. ... ... ... SQL ... пайдаланушы МБ-ң объекттерінің жағдайының ізін басу үшін ... - бұл ... ... болу ... SQL ... кестелер барлық мәліметтерді сақтаушы объект
ретінде қолданылады. Ереже бойынша, кестеде бір ... ... ... ... ... ... ... тауарлар туралы және тағы да
басқалар туралы ақпарат. Кез-келген түрдегі ақпаратты сақтау үшін ... ... ... ... Declare cursor ... ... ... SQL Server-де екі типті курсорларды ... ... және тек қана ... ... ... ... сұратулардың нәтижесінде алынған көптеген мәліметтерде белгілі ... ... үшін ... ... SQL Server ... ... ... өмірде
қолданылатын кез-келген индекс сияқты рөл атқарады. Бұл - ақпаратты немесе
ақпараттың белгілі бір түрін тез ... ... ... ... ... ... кестедегі мәліметтерге кіру мүмкіндігін жыламдату үшін Microsoft SQL
Server-де ... ... ... ... екі ... ... және ... индексті қолданғанда кестедегі мәліметтер физикалық
түрде ретке ... ... тек бір ғана ... индекс
болады. Кластеризделген индекс ... ... ... ... ... ... ... соңғы парақ мәліметтердің беттерін
білдіреді. ... ... ... ... ... бір ... аз ... сондықтан кластеризделген
индекстер ереже бойынша тезірек жұмыс істейді.
Триггерлер. Тригерлер – бұл белгілі бір ... ... ... ... активтендірілетін арнайы объекттер. Берілген шартты
сақтағанда триггер жұмыс ... де онда ... ... ... күрделі талаптарды орындау үшін қолданылады.
Триггерлерді Windows NT-да DLL-ді ... етіп ... ... Бұл
триггерлерде басқа программалардың мәліметтеріне кіру мүмкіндігі немесе
мәліметтерді басқа программаларға беру ... ... ... МБ-ң ... құрған кезде идентификаторларға
ережелер мен келісімдерді орнату керек. Компанияның МБ-ң және ... ... өте ... ... ... ... ойластырылған сызбаның
көмегімен клиент/сервердің сенімді құрылымының сенімді фундаментін құруға
болады. Объекттер аттарының келісімі үшін ... SQL Server бір ... ... Microsoft SQL Server-де транзакция деп (transaction) бір
ретте орындалуы ... ... ... ... Егер де ... ... онда ол толығымен аяқталуы керек немесе ... ... ... ... процедураларды транзакцияның
серияларымен салыстыруға болады. Мысалы, банк ... ... ... чек ... Бұл ... банк екі транзакцияны орындайды:
- клиенттің банктік шотының 100$-ға азаюы;
- банкте қолма-қол шоттың 100$-ға көбеюі.
Банктік кітапта баланс сақталуы үшін бұл екі ... ... ... ... Microsoft SQL Server трранзакция соңына дейін
орындалатынына ... ... ... ... ... орындамайды.
Мысалы, егер де pubs МБ-ғы titles кестесінде орналасқан ... ... ... ... бағасын 25%-ға жоғарылату ... ... ... ... ... ... titles
SET price = price * 1.25
WHERE type = business
Microsoft SQL Server ... ... ... ... ... ... транзакциондық командалар қолданады:
Begin TRANsaction. Бұл оператор Microsoft SQL Server-ге барлық келесі
операцияларды топтастыру ...... ... ... туралы
хабарлау үшін қолданылады.
Comit TRANsaction. Бұл оператор Microsoft SQL ... ... ... орындалуын аяқтау туралы бұйрық береді. Нәтижесінде
транзакция аяқталады және ол дискке жазылуы керек.
ROLLBACK TRANsaction. Бұл ... ... SQL ... ... барлық өзгерістерін болдырмауы туралы және бастапқы
қалпына келтіру туралы бұйрық береді.
SAVE TRANsaction. Бұл ... ... ... ... нүктесін орнатуға мүмкіндік береді.
SQL операторларының басталуының және ... ... ... ... ... Бұл ... әрбір оператордың басында және
аяғында BeginTRAN және Comit TRAN ... ... ... жоқ.
Microsoft SQL әрбір транзакция анық емес ... ... ... TRAN ... деп ... ... кері жағдай болғанда транзакцияның тек
жартысы ғана орындалады дейді.
Мысалы:
Анық емес оператор BeginTRAN
UPDATE customer-account
SET balance=balance-100
Tran-id=3456
Where cust_id= «1515453456»
Анық емес оператор Commit TRAN
Анық емес ... ... ... (tran_id, amount, cust_id)
Values (3456, 100, «151545»)
Анық емес оператор Commit TRAN
Бұл барлық транзакцияның нәтижесі жазылатындығына немесе транзакция ... ... ... ... ... ... ... түрде енгізу керек:
BeginTRAN
UPDATE customer-account
SET balance=balance-100
Tran-id=3456
Where cust_id= «1515453456»
INSERT bank_cashacct (tran_id, amount, cust_id)
Values (3456, 100, ... ... ... ... және ... ... ... және Commit TRAN операторларын қолдану - ... ... ... дұрыс жазылымын қаматамасыз етеді. Егер де сервердің
жұмысы транзакцияның орындалуына ... ... ... ... ... ... ... орындалмайды.
Егер де BeginTRAN және Commit TRAN операторлары орындалғаннан кейін
транзакцияда бәрін ... ... ... онда ROLLBACK TRAN–ді қолдануға
болады.
2.2 SQL-серверде жұмыс істеу принциптері
Реляционды МБ-ң негізгі элементтері ... ... ... (TABLE). ... мен бағаналардан тұратын тіктөртбұрышты кесте.
Кестені тапсыру – қандай бағаналар мен ... ... ... (ROW). Өрістерден, яғни бағаналардан тұратын жазба. Кестенің әрбір
өрісі оның мәнінен немесе “бос” (NULL) ... ... ... ... ... ... мүмкін.
Бағана (COLUMN). Кестеде әрбір бағананың өзінің аты және типі болады.
SQL кестелері. Реляционды мәліметтер базасында ақпараттар жолдар ... ... ... ... ұйымдастырылуы мүмкін. SQL тілінде
қолданылатын кілтердің үйлесімділігі ... ... (CREATE ... – my_table деп ... кестені құру) сұратулар үшін “ұсыныс”
(предложение) ... атқа ие ... ... ... CREATE TABLE ұсынысы
арқылы құрылады. CREAT TABLE ұсынысы ... ... ... кестенің
бағаналарының аттарын және осы бағаналардағы мәліметтердің ... CREAT ... ... Егер де ... TABLE сұратуын беретін болсақ, онда жүйе кестені ... ол ... бос ... яғни ... ... ... жолдан
тұрады, бірақ та әлі ешқандай жолдардың мәліметтері болмайды. ... INSERT ... ... ... ... ... құрылымы. Бір немесе бірнеше кестелерден кез-келген
мәліметтерді алған кезде барлық ... бір ғана SELECT ... ... ... ... үшін синтаксистік конструкцияларда келесі
белгілер қолданылады:
• жұлдызша (*) - «бәрі» деген белгі, ... ... ... яғни ... ... ... жағдайлар»;
• тік жақшалар ([]) – бұл жақшадағы конструкциялар ... емес ... яғни ... емес бола ... ... жақшалар ({}) – бұл жақшадағы ... ... ... ... қарастырылуы керек;
• көп нүкте (…) – бастапқы синтаксистік бірлік бір немесе бірнеше рет
факультативті қайталануы мүмкін ... ... түзу ... (|) – екі ... одан да көп ... таңдау
мүмкіндігінің бар болуын білдіреді. ... ASC|DESC ... ... DESC ... ... ... ... көрсетеді.
Егер де таңдалынатын элементтердің біреуі тік жақшаға енгізілген
болса, онда ол өзі (по ... ... ... ... - ... ... ... жағдайда ASC таңдалынады
дегенді білдіреді);
• үтір ... (;) – SQL ... ... ... үтір (,) – ... ... бөлу үшін қолданылады;
• бос орын пробелы ( ) – SQL ... ... ... ... көрнекілігін жоғарылату үшін енгізілуі
мүмкін;
• майлы, жазбаша, бас ... ... ... және ... SQL ... жазу үшін ... және конструкцияда қалай
көрсетілсе, солай жазылуы керек-……...;
• жол әріптері конструкцияны жазу үшін ... ... ... ... бір ... ... керек, мұнда
конструкциялардың бөлек сөздері бір-бірінің арасында сызық символымен
байланыстырылады (_);
• «кесте» және ... ... ... ... ... ... …, терминдерін ауыстырады (синтаксистік конструкция
мәтінін қысқарту мақсатында);
• «кесте» термині – базалық кесте тәрізді кестенің ... ... ... (таңдау) ұсынысының форматы:
Сұратудың тармағы [UNION [ALL] сұратудың тармағы] …
[ORDER BY {[кесте.]бағана | ... [[ASC] | ... | ... [[ASC] | DESC]] ... формат біріктіруге (UNION), содан кейін ... ... ... ... ... ... қорытындысын ретке келтіруге
(ORDER BY) мүмкіндік береді. Сонымен қатар, ретке ... өсу ... ... немесе кему DESC (DESCending) ретінде (үндемеу бойынша
ASC қолданылады) тұрғызуға болады.
Бұл ұсыныста сұратудың ... ... ... ... ... ... (қажет болған жағдайда) шарттарды көрсетуге мүмкіндік
береді.
SELECT - ... ... ... ... мен ... ... қорытындының алдында көрсетілген амалдарға және ... ... ... қайта құрылуын орындау;
FROM - (бірдеңенің ішінен) бағаналар орналасқан ... ... - ... ... ішіндегі жолдар жолдарды ... ... ... BY - ... бір шарт ... ... SELECT ... функцияларын: SUM (соммасы), COUNT (саны), MIN (минимальді мәні),
MAX (максимальді мәні) немесе AVG (орташа мәні) қолдана отырып ... ... ғана ... ... алу үшін ... - (бар бола отырып) нәтижесінде тек таңдау шарттарының тізімін
қанағаттандыратын топтардың бар болуы.
Және мынандай форматы ... [[ALL] | ... * | ... ... ... ... | көрсетілуі} [құпия_ат]
[,{базалық_кесте | көрсетілуі} [құпия ат]] …
[WHERE ... BY ... [HAVING ... ... ... ... | мән | SQL_функция | жүйелік_айнымалы
мұндағы мән дегеніміз бұл:
[кесте.]бағана | (мән) | константа | ... ... ... ... ... {[ [+] | - ] {мән | ... [ + | - | * | ** ]}… ... SQL_функциясының синтаксисі келесі конструкциялардың бірі болады:
{SUM|AVG|MIN|MAX|COUNT} ( [[ALL]|DISTINCT][кесте.]бағана )
{SUM|AVG|MIN|MAX|COUNT} ( [ALL] мән )
COUNT(*)
WHERE фразасы жолдарды іріктеу үшін шарттардың жиынтығын қосады:
WHERE [NOT] ... ... ... ... – келесі конструкциялардың бірі:
мән { = | | < | | >= } { мән | ( ... ... ) ... [NOT] BETWEEN мән_2 AND ... [NOT] IN { ( ... ... ) | ( сұратудың тармағы ) }
мән IS [NOT] NULL
[кесте.]бағана [NOT] LIKE 'жол_символдары' [ESCAPE 'символ']
EXISTS ( ... ... ... ... операторларынан (= | | < | | >=) ... ... BETWEEN ... LIKE ... IN ... болу), IS
NULL (анықталмаған) және EXISTS (бар ... ... ... ... ... логикалық операторлармен біріктірілген бір немесе
бірнеше шарттарда қалыптастырылады:
AND - AND ... ... ... ... ... керек;
OR - OR шартының көмегімен бөлінетіндердің біреуі қанағаттандырылуы
керек;
AND NOT – ... шарт ... ... ... ... NOT - ... шарт ... керек немесе екінші шарт
қанағаттандырылмауы керек.
Сонымен қатар, AND - OR ... ... ... ... тек содан кейін ғана OR ... ... ... шарт
бар. Қажетті ақпаратты алу үшін WHERE шарттары дұрыс ... ... ... ... ... ... ... салыстырылады – теріс
сандар, олардың абсолютті көрсеткіштеріне қарамастан оң ... аз ... ... Символдар жолы нақты бір МББЖ-де
қолданылатын кодтың көрсетілуіне сәйкес ... ... ... Егер де әр түрлі ұзындықтағы екі символдар жолы салыстырылатын
болса, онда ... ... ... бірдей ұзындықта болу үшін
кішірек жолдың оң жағы бос орындармен ... BY ... ... ... ... ... BY [кесте.]бағана [,[кесте.]бағана] … [HAVING фраза]
GROUP BY топ бойынша құрылатын кестенің қайта құрылуын ынталандырады,
олардың ... GROUP BY ... ... ... ... ... Бұл топтарға SELECT фразасында ... ... ... ал бұл топтың барлық мәндерін жеке мәнге (сомма, мөлшер және
тағы басқалар) ауыстыруына әкеледі.
HAVING (WHERE фразасының ... ... ... ... [NOT] ... ... HAVING_шарт]…
Берілген шарттарды қананғаттандырмайтындарды топтың нәтижесінен
шығарып тастауға болады:
Мән { = | | < | | >= } { мән | ( ... ... ... ... | ... [NOT] BETWEEN ... | SQL_функция_2} AND {мән_3 |
SQL_функция_3}
{мән | SQL_функция} [NOT] IN { ( константа [,константа]… )|(сұратудың
тармағы)}
{мән | SQL_функция} IS [NOT] NULL ... [NOT] ... [ESCAPE ... ( сұратуыдың тармағы )
SQL-дің бір ғана кестесін қолданатын сұратулар:
WHERE фразасын қолданбай іріктеу. Жай ... ... ... және ... ... ... Ат, ... Адрес
FROM Мердігерлерден;
Егер де мердігерлер туралы толық ақпарат ... ... онда ... ... Ат, ... ... ... Телефон
FROM Мердігерлерден;
немесе қысқаша:
SELECT *
FROM Мердігерлерден;
Мұндағы «жұлдызша» (*) FROM форматында ... ... ... ... ... ... Сонымен қатар, өрістерді шығару
тәртібі кестені құрған кездегі ... ... ... сәйкес
келеді.
COUNT(*) арнайы жағдайынан басқа бұл функциялардың әрқайсысы кейбір
кестенің ... ... ... ... және төмендегідей
анықталатын бір ғана мәнді құрады:
COUNT – бағанада көрсетілген мәндердің саны,
SUM – бағанада көрсетілген мәндердің сомасы,
AVG - ... ... ... ... ... - ... ... мәндердің ең үлкен мәні,
MIN - бағанада көрсетілген мәндердің ең кіші мәні.
SQL-дің бірнеше кестесін қолданылатын сұратулар.
SQL-дің бірнеше өзара ... ... ... ... ... жүйелі түрде өңдеуге арналған жақсы механизмі бар. ... ... ... ... ... ... ... корреляциялық сұратудың тармақтар болады. Олар IN, EXISTS
шартының немесе ( = | < | < | insert (this) ; ... ( ) ... (this) ; }
// ... құру үшін ... ... ... ... //кету
керек, мұнымен қатар қарама-қарсы байланыс void setBranch ... ... Setvalue (b) ;} ... getBranch ( ) {WorksAtgetvalue ( ) ; }
Static os_typespec* ... ( ) ... 1. ... ... ... ... бөлігіне арналған
C++ ObjectStore кластардың хабарламасы
New операторын ... ... ... ... ... ... ... перманенттің қасиеті new
операторын жүктеу арқылы құрылады. ... ... және ... арналған бұл оператордың конструкторында жүктеудің екі мысалы
келтірілген. ... Branch ... ... ... ... = new (dreamhomeDB, os_typespec: :get_char ( ), 4) char [4];
Бұл жағдайда new операторының үш параметрі ... ... ... ... көрсеткіш (dreamhomeDB);
• жаңа объектке арналған, Get_char класының os_typespec жүктелген
әдісін, шақыру ... ... ... ... ... ... ... new операторының бұл версиясы көрсеткішті қайтадан
таратудан есте ... ... ... байланыстарды құру. SalesStaff және Branch
объекттердің арасында байланыстардың болуы бір-біріне ... ... ... ... ... алады. Мәліметтер
базасында мұндай екі жақты ... ... ... ... ... ... сәйкес келетін байланыстар үшін ... ... ... Бұл ... ... ... арналған макро
анықтамалар берілген; 1-листингте осы макро анықтамалардың екеуі қолданудың
мысалдарын көрсетеді: os_relationship_l_m және os_relationship_m_l ... ... ... ... немесе os_relationship_m_m
макро анықтамалары бар). Бұл ... ... ... ... енгізуге және іріктеуге арналған кіру мүмкіндігінің функциялары
қарастырылған. Байланыстардың бір жағын ... ... ... ... ... ... байланыстың басқа (кері) жағын құруға ... ... ... ... ... керек. Бірақ
та, кез-келген жағдайда бұл макро анықтамалар төменде көрсетілген ... ... Class. ... ... ... ... кластың
аты.
• Member. Кластардың хабарландырушы мүшесінің аты.
• Inv_class. Байланыстардың қарама-қарсы жағын ... ... ... ... Inv_member. Байланыстардың қарама-қарсы жағын көрсететін кластың
мүшесінің аты.
• Value_type. ... ... ... ... ... ... ... спецификациясы
(os_typespec класының нұсқасы) new операторының перманентті версиясында
параметрлер ... ... Олар ... ... ... ... ... қорғанысты қамтамасыз етуге
мүмкіндік бреді. Типтердің спецификациясы нақты бір типті білдіреді, мысалы
char, int ... Branch*. ... ... ... әр ... спецификацияларды іріктеуге арналған ... ...

Пән: Информатика
Жұмыс түрі: Курстық жұмыс
Көлемі: 39 бет
Бұл жұмыстың бағасы: 700 теңге









Ұқсас жұмыстар
Тақырыб Бет саны
MS SQL Server туралы мәліметтер және жұмыс істеу негіздері4 бет
Sql13 бет
SQL Server18 бет
SQL негіздері78 бет
SQL серверін қолданып қосымшалар жүйесін жетілдіру80 бет
SQL тілінде деректерді өңдеудің негізгі операторлары. Деректер базасын құру13 бет
SQL құрылымдық сұранымдар тілі32 бет
SQL-дің жүйелік құрылым және мәліметтер базасында қолданылуы20 бет
Sql-тілі4 бет
“Персонал” бағдарламасының SQL тіліндегі негіздері86 бет


Исходниктер
Пәндер
Көмек / Помощь
Арайлым
Біз міндетті түрде жауап береміз!
Мы обязательно ответим!
Жіберу / Отправить


Зарабатывайте вместе с нами

Рахмет!
Хабарлама жіберілді. / Сообщение отправлено.

Сіз үшін аптасына 5 күн жұмыс істейміз.
Жұмыс уақыты 09:00 - 18:00

Мы работаем для Вас 5 дней в неделю.
Время работы 09:00 - 18:00

Email: info@stud.kz

Phone: 777 614 50 20
Жабу / Закрыть

Көмек / Помощь