Деректерді басқару мен алмасуды стандарттау



Pdf көрінісі
Дата06.12.2022
өлшемі232,73 Kb.
#55207


Деректерді басқару мен алмасуды стандарттау
SQL тілі ақпаратқа қол жеткізуге және реляциялық дерекқорды басқаруға арналған. Әр 
түрлі реляциялық дерекқорды басқаруды ДҚБЖ деп аталатын бағдарламалар жүзеге 
асырады - дерекқорды басқару жүйелері (DBMS-DataBase Management System). 
Реляциялық Дерекқордың өзі белгілі бір түрде ұйымдастырылған ақпарат пен ДҚБЖ 
қоймасы болып табылады. Алайда, іс жүзінде ДҚБЖ термині көбінесе ДБ (мәліметтер 
базасы) терминімен ауыстырылады. Oracle, Microsoft SQL Server, Informix, DB2, Access, 
MySQL сияқты әртүрлі дерекқорлармен бір тілде сөйлесуге болады, SQL тілі жасалды. 
1986 жылдан бастап ISO (International Organization for Standardization) және ANSI (American 
National Standards Institute) комитеттері SQL тілінің бірқатар стандарттарын жасауға кірісті, 
олар кейіннен қабылданып, мынадай атаулар алды: SQL86, SQL89, SQL92 және SQL99. 
SQL86 стандарты SQL тілінің минималды стандартты синтаксисін тіркеді. 
SQL89 стандарты 1989 жылы қабылданды. Ол SQL89 стандартына қолдау көрсететін 
барлық ДҚБЖ-ны жүзеге асыруы керек SQL тіл операторларының жиынтығын енгізді. Іс 
жүзінде әрбір нақты коммерциялық ДҚБЖ стандартта көрсетілгеннен әлдеқайда кең 
мүмкіндіктер жиынтығын ұсынады. Сонымен, стандартты қабылдау кезінде ДҚБЖ-нің 
көпшілігі кірістірілген және динамикалық SQL-ді қолдағанына қарамастан, SQL89 
стандартында SQL тілін процедуралық бағдарламалау тіліне енгізу ережелері (мысалы, с 
тілі) және динамикалық SQL қолдану ережелері жазылмаған. 
Соңғы уақытқа дейін ДҚБЖ-нің көпшілігі SQL92 стандартын қолдады. 
SQL92 стандартында сәйкестіктің үш деңгейі анықталды: 
* негізгі (кіріспе) ; 
* орташа (Intermediate) ; 
* толық (толық). 
Сонымен қатар, ДҚБЖ sql92 стандартын қолдайтынын жариялау үшін көптеген 
өндірушілер тек сәйкестіктің негізгі деңгейін жүзеге асырды. 
Sql99 деп аталатын жаңа sql3 стандарты SQL тілінің Объектілік кеңейтімдерін және SQL 
тілінің кейбір процедуралық кеңейтімдерін стандарттады. Осы стандарт қабылданған кезде 
Oracle сияқты коммерциялық ДҚБЖ-нің көпшілігі іс жүзінде объект типтері мен 
мұрагерлікті қолдануды енгізді. 
SQL99 стандартында міндетті функционалды ядро (Core) және кеңейтілген сәйкестік 
деңгейлерінің жиынтығы анықталған. Sql99 функционалды ядросы SQL92 негізгі сәйкестік 
деңгейін қамтиды. Кеңейтілген сәйкестік деңгейлері SQL99 стандартын қолдауға үміткер 
ДҚБЖ-де іске асыру үшін міндетті емес. ДҚБЖ кеңейтілген сәйкестік деңгейін қолдамауы 
немесе олардың кез-келгенін қолдамауы мүмкін. 
Әр деңгей SQL тілінің белгілі бір сәйкестік деңгейін талап ететін ДҚБЖ-ны жүзеге асыруды 
қолдауы керек мүмкіндіктер жиынтығын сипаттайды. 
Сонымен бірге, SQL99 стандарты болашақта пайда болуы мүмкін кеңейтілген сәйкестіктің 
барлық деңгейлері үшін ашық екендігі жарияланды. 
Қазіргі уақытта SQL99 стандарты келесі сәйкестік деңгейлерін қамтиды: 


* Функционалды ядро. 
Бұл деңгей ДҚБЖ-ны кез-келген іске асыру үшін міндетті болып табылады. Ол SQL92 
сәйкестігінің негізгі деңгейін, сондай-ақ LOB нысандарымен жұмыс істеуді қолдауды 
(Large Object), басқа бағдарламалау тілдерінде жазылған SQL сыртқы бағдарламаларынан 
қоңырау шалуды және пайдаланушы анықтайтын қарапайым деректер түрлерін (UDT 
типтері, User-Defined Datatypes) қамтиды. LOB нысандарының екі түріне қолдау 
көрсетіледі: екілік BLOB нысандары (екілік үлкен нысан) және символдық CLOB 
нысандары (Character үлкен нысан). LOB нысандарына кіру үшін локаторлар деп аталатын 
нысандар енгізіледі. Локаторлар сілтеме бойынша LOB объектісіне кіруді жүзеге асыратын 
бүтін айнымалылармен сипатталады. Сыртқы бағдарламалар кесте сияқты схеманың 
объектілері ретінде анықталады. Іске асырылуына байланысты сыртқы бағдарлама 
кодының өзі DLL кітапханасында немесе еркін файлда болуы мүмкін, ал сыртқы 
бағдарламаны LANGUAGE және EXTERNAL сөз тіркестерін міндетті түрде көрсете 
отырып, create PROCEDURE немесе CREATE FUNCTION тіл операторы жасайды. Айта 
кету керек, сыртқы бағдарламаларды пайдалану функционалды ядроға енсе де, SQL 
процедуралары мен функцияларын шақыруды қолдау "PSM модульдері" (Persistent Stored 
Module) сәйкес келеді. Пайдаланушы анықтаған деректер түрлері қарапайым және 
құрылымдалған болуы мүмкін. Екінші жағдай "нысандарды базалық қолдау"сәйкест ік 
деңгейіне қатысты. Пайдаланушы анықтайтын қарапайым деректер түрі-бұл жаңа атау 
анықталған және таңбалар немесе сандар санына белгілі бір шектеулер болуы мүмкін бар 
деректер түрі. Пайдаланушы анықтаған қарапайым деректер түрін CREATE TYPE 
операторы жасайды (мысалы, create TYPE name_of_new_type As INTEGER (5) FINAL; ). 
* Күн / уақыт жұмысын қолдау. 
Бұл сәйкестік деңгейі datetime және INTERVAL деректер түрлерін енгізеді, ал DATETIME 
түрі үшін timezone_hour және TIMEZONE_MINUTE өрістерін әмбебап уақытқа қатысты 
аймақтық уақыт үшін ығысуды анықтайды. Толық сәйкестік деңгейінің SQL92 
стандартында DATETIME және INTERVAL деректер түрлері бұрыннан анықталған. 
* Тұтастықты басқару. 
Бұл сәйкестік деңгейі анықтамалық тұтастықтың қосымша мүмкіндіктерін қолдауды 
ұсынады: CREATE Table операторының тексеру тұтастығының шектеулеріндегі ішкі 
сұраулар, триггерлер, CREATE ASSERTION операторы жасаған мәлімдемелер. Бұл 
мүмкіндіктердің көпшілігі SQL92 стандартына кірді. 
* Белсенді мәліметтер базасы. 
Сәйкестіктің бұл деңгейінде дерекқорда сақталатын және орындалатын мәліметтер 
базасының триггерлерін қолдау анықталады. Триггерлер-бұл деректерді өзгертуден бұрын 
немесе кейін орындалатын код бөліктері (мысалы, жолды кірістіру, жою немесе жолды 
өзгерту). 
• OLAP. 
Бұл сәйкестік деңгейі неғұрлым күрделі сұраныстарды сипаттау құралдарын анықтайды. 
Сонымен, select операторына бірнеше сұраулармен берілген жиындардың қиылыстарын 
алуға мүмкіндік беретін INTERSECT тіркесі кіреді. Sql92 стандартында бұл мүмкіндік тек 
толық сәйкестік деңгейіне арналған. Select мәлімдемесіне толық сыртқы кесте 
қосылыстарын құруға арналған FULL OUTER JOIN тіркесі кіреді. Мұндай қосылыста 
сәйкестіктер болмаған кезде NULL мәндері қойылатын біріктірілген кестелердің барлық 


жолдары болады. Мұндай мүмкіндік sql92 стандартына сәйкестіктің толық деңгейінде де 
қарастырылған. Деректерді басқару үшін қолданылатын SQL тіл мәлімдемелерінде жол 
мәндері мен кесте конструкторларын қолдануға қолдау көрсетіледі. Жол мәндерін 
құрастырушылар бір немесе бірнеше өрнектерден тұрады (мысалы, (NULL, 1,'Field1') ). 
Кесте мәндерінің конструкторлары-жолдар тобын сипаттайтын жол конструкторларының 
мәндерінің жиынтығы (мысалы, VALUES (1,'A'), (2,'B') ). 
* PSM модульдері. 
Бұл сәйкестік деңгейі SQL99 стандартының SQL/PSM құжатында толық сипатталған. 
Сонымен, SQL тілін CASE, IF, WHILE, REPEAT, LOOP және FOR басқару операторлары 
кеңейтеді. Create PROCEDURE және CREATE FUNCTION операторлары құратын 
процедуралар мен функцияларды қолдау енгізіледі. SQL тіліне айнымалыларды қолдану 
және қате өңдеушілерді қолдану енгізілді. 
* CLI интерфейсі. 
Бұл сәйкестік деңгейі SQL мәлімдемесінің қоңырауын анықтайтын қоңырау деңгейінің 
интерфейсіне қолдау көрсетеді. Бір кездері CLI-интерфейс негізінде ODBC стандарты 
әзірленді, ол кейінгі дәрістерде толығырақ қарастырылады. 
* Нысандарды негізгі қолдау (Basic Object Support). 
Бұл сәйкестік деңгейі пайдаланушы анықтаған Объектілік деректер түрлерін қолдауды 
енгізу, терілген кестелерді (объект типтеріне негізделген кестелер) қолдану, массивтер мен 
анықтамалық деректер түрлерін пайдалану және сыртқы процедураларды қайта анықтау 
арқылы объектілерді пайдалануды стандарттайды. 
* Нысандарды кеңейтілген қолдау (жақсартылған нысанды қолдау). 
Бұл сәйкестік деңгейі объектілерді негізгі қолдау деңгейімен қамтамасыз етілген барлық 
мүмкіндіктерді қамтиды, оларды пайдаланушы анықтаған деректер түрлеріне бірнеше 
мұрагерлік қолдау көрсетеді. 
Жоғарыда келтірілген кеңейтілген сәйкестік деңгейлері стандарттың бөлімдеріне сәйкес 
келетін құжаттармен тікелей байланысты емес. Қазіргі уақытта SQL99 стандарты келесі 
негізгі бөлімдерді қамтиды: 
* SQLFramework-стандарттың логикалық негіздерін сипаттайды. 
* SQLFoundation-стандарттың әр бөлімінің мазмұнын анықтайды және Стандарттың 
функционалды өзегін сипаттайды (CORE SQL99 ). 
* SQL / CLI-қоңырау деңгейінің интерфейсін сипаттайды. 
* SQL / PSM-SQL тілінің процедуралық кеңейтімдерін анықтайды. 
* SQL / Bindings - SQL тілінің басқа бағдарламалау тілдерімен өзара әрекеттесу механизмін
анықтайды. 
* SQL / MM - мультимедиялық деректермен жұмыс істеуге арналған SQL тілінің құралдары 
сипатталған. 
* SQL / OLB-SQL мәлімдемелерін Java тіліне ендіруге арналған SQLJ стандартының 0 
бөлігін сипаттайтын SQL мен объект тілдерімен байланысын анықтайды. 


Деректерді басқаруды және алмасуды стандарттау 
ISO халықаралық стандарттау ұйымы JTC1 ("Data Management and Interchange") кіші 
комитетінің шеңберінде жергілікті және таратылған ақпараттық жүйелер үшін деректерді 
басқару және алмасу саласында стандарттарды әзірлейді. 
SC32 талқылайтын мәселелер ауқымына қолданыстағы және пайда болатын стандарттар 
үшін өзара іс-қимыл модельдерін қарау; деректер құрылымдары мен типтерін анықтау, осы 
құрылымдар мен типтерді қолдану семантикасы; деректерге параллель қол жеткізу және 
оны өзгерту, деректермен алмасу, сондай-ақ деректерді сақтауды іске асыру үшін 
пайдаланылатын тілдерге, сервистерге және хаттамаларға арналған стандарттарды 
сипаттау; метадеректерді, сондай-ақ басқа да ақпараттық ресурстарды құрылымдау, 
ұйымдастыру және тіркеу үшін пайдаланылатын әдістерге, тілдерге, сервистерге және 
хаттамаларға арналған стандарттар кіреді. 
SC32 шеңберінде бірқатар жұмыс топтары жұмыс істейді: 
* WG01-әзірленіп жатқан бизнес-сценарийлер мен олардың компоненттерін, сондай-ақ 
электрондық коммерция саласында пайдаланылатын басқа да стандарттарды ресми 
сипаттау технологиясын сәйкестендіру және нақтылау стандарттарын әзірлеуге 
мамандандырылған жұмыс тобы.


Достарыңызбен бөлісу:




©emirsaba.org 2024
әкімшілігінің қараңыз

    Басты бет