




已閱讀5頁,還剩12頁未讀, 繼續(xù)免費閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
SQL-92標準中文翻譯前言ISO(國際標準化組織)是一個由國家標準機構(gòu)(ISO成員機構(gòu))構(gòu)成的世界性的聯(lián)邦。通常由ISO技術(shù)委員會開展籌備國際標準的工作。如果成員機構(gòu)關(guān)注的某個主題成立了技術(shù)委員會,那么成員機構(gòu)有權(quán)派代表參加該委員會。與ISO有聯(lián)絡(luò)的國際組織,政府和非政府組織,也參與工作。在所有電工標準化的問題上,ISO與國際電工委員會( IEC )密切合作。被技術(shù)委員會采納的國際標準草案將會分發(fā)給各成員機構(gòu)尋求認可,之后才能由ISO理事會接受為國際標準。按照ISO規(guī)程,需要參加表決的成員機構(gòu)中至少75 贊成,該草案才能通過。國際標準ISO / IEC 9075:1992出自聯(lián)合技術(shù)委員會ISO / IEC JTC1 ,信息處理系統(tǒng)。它取消并取代國際標準ISO / IEC 9075:1989 ,Database Language-SQL,構(gòu)成技術(shù)性修訂。該國際標準包含了七個告知性的附錄:- 附錄A (資料): SQL語言的分級;- 附錄B (資料): 實現(xiàn)定義的要素;- 附錄C (資料): 實現(xiàn)依賴的要素;- 附錄D (資料): 不推薦使用的功能;- 附錄E (資料): 與ISO / IEC 9075:1989的不兼容;- 附錄F (資料): SQL的維護和解釋。簡介該國際標準于1992年被批準。該國際標準是從ISO/IEC 9075:1989(信息系統(tǒng),數(shù)據(jù)庫語言SQL完整性增強)發(fā)展而來,并取代了那個國際標準。該國際標準在詳細說明中增加了大量重要的新特性和功能。一般情況下該標準與ISO/IEC 9075:1989標準兼容,也就是說,除了極少數(shù)例外,符合ISO / IEC 9075:1989標準的SQL語言也符合該國際標準,并且在兩者實現(xiàn)上保持一致。在ISO / IEC 9075:1989和該國際標準之間,已知的不相容參考告知性附件E “與ISO / IEC 9075:1989的不兼容 ”。在ISO/IEC 9075:1989和該國際標準之間,技術(shù)方面的改變包括現(xiàn)有功能的改進或增強和新功能的定義?,F(xiàn)有功能的重要改進有:-直接調(diào)用SQL語言的更好的定義;-改進的診斷能力,特別是新的狀態(tài)參數(shù)( SQLSTATE ) ,診斷領(lǐng)域,并支持報表。重要的新特性有:1)支持更多的數(shù)據(jù)類型(DATE, TIME, TIMESTAMP, INTERVAL, BIT string, variable-length character and bit strings, and NATIONAL CHARACTER strings),2)除了表示SQL語言本身以外,還支持字符集和更多的排序規(guī)則,3)支持更多的標量操作,如連接字符串和取子字符串的字符串操作,日期和時間操作,條件表達式的形成,4)在標量值查詢表達式和表值查詢表達式的使用上,增強了通用性和正交性,5)更多的set操作符(例如,union join, natural join, set difference, and set intersection),6)能夠在方案中定義域,7)支持對方案的操作(特別是DROP和ALTER語句),8)支持在Ada、C、MUMPS語言中嵌入SQL語句(模塊和嵌入式語法),9)更多的權(quán)限能力,10)更多的引用完整性的能力,包括引用的動作,檢查約束中的子查詢,單獨的斷言,以及用戶控制約束的推遲,11)信息方案的定義,12)支持SQL語言的動態(tài)執(zhí)行,13)支持某些設(shè)施所需的遠程數(shù)據(jù)庫訪問(尤其是連接的管理語句和合格的方案名稱),14)支持臨時表,15)支持各級事務(wù)的一致性,16)支持數(shù)據(jù)類型轉(zhuǎn)換(各種數(shù)據(jù)類型使用CAST表達式),17)支持滾動游標,18)具有標記的能力,以輔助應(yīng)用程序的可移植性。該國際標準的內(nèi)容組織如下:1)第1條“范圍” ,指定該國際標準的范圍。2)第2條“規(guī)范參考” ,通過該國際標準的引用,標識額外的標準。這些標準構(gòu)成該國際標準的規(guī)定。3)第3條“定義,記號,和約定” ,定義了該國際標準中使用的記號和約定。4)第4條“概念” ,給出在SQL定義中用到的概念。5)第5條“詞法要素” ,定義語言的詞法要素。6)第6條“標量表達式”,定義產(chǎn)生標量值的語言要素。7)第7條“查詢表達式”,定義產(chǎn)生數(shù)據(jù)行和數(shù)據(jù)表的語言要素。8)第8條“謂詞” ,定義語言的謂詞。9)第9條“數(shù)據(jù)分配規(guī)則” ,指定檢索數(shù)據(jù)或存儲數(shù)據(jù)到數(shù)據(jù)庫的分配規(guī)則,和set操作形成規(guī)則。10)第10條“附加的公用要素” ,定義用于語言各部分的附加的語言要素。11)第11條“方案的定義和操縱” ,定義創(chuàng)建和管理方案的能力。12)第12條“模塊” ,定義模塊和過程。13)第13條“數(shù)據(jù)操縱” ,定義數(shù)據(jù)操縱語句。14)第14條“事務(wù)管理” ,定義SQL事務(wù)管理語句。15)第15條“連接管理”,定義SQL連接管理語句。16)第16條“會話管理” ,定義SQL會話管理語句。17)第17條“動態(tài)SQL ” ,定義動態(tài)執(zhí)行SQL語句的能力。18)第18條“診斷管理” ,定義診斷管理能力。19)第19條“嵌入式SQL ” ,定義在某些標準編程語言中嵌入SQL的語法。20)第20條“直接調(diào)用的SQL ” ,定義了SQL語言的直接調(diào)用。21)第21條“信息方案和定義方案” ,定義包含方案信息的可視化表。22)第22條“狀態(tài)碼” ,定義標識SQL語句執(zhí)行狀態(tài)的值和這些值返回的機制。23)第23條“一致性” ,定義了符合該國際標準的準則。24)附錄A “SQL語言的分級” ,是一個告知性的附錄。它列出了分級的規(guī)則,定義了入門級SQL和中級水平SQL。25)附錄B , “實現(xiàn)定義的要素” ,是一個告知性的附錄。它列出了在該國際標準正文中規(guī)定的數(shù)據(jù)庫上的語法、含義或效果是部分或全部實現(xiàn)定義的特性,并描述了在各種情況下執(zhí)行者應(yīng)提供的確定信息。26)附錄C,“實現(xiàn)依賴的要素”,是一個告知性的附錄。它列出了在該國際標準正文中明確規(guī)定的數(shù)據(jù)庫上的含義和效果是實現(xiàn)依賴的特性。27)附錄D,“不推薦使用的功能”,是一個告知性的附錄。它列出了技術(shù)委員會打算將來在該國際標準的修訂版中,不會出現(xiàn)的功能。28)附錄E,“與ISO / IEC 9075:1989的不兼容”,是一個告知性的附錄。它列出了該國際標準當(dāng)前版本和ISO / IEC 9075:1989標準之間的不兼容 。29)附錄F,“SQL的維護和解釋”,是一個告知性的附錄。它列出自ISO / IEC 9075:1989采納以來,被ISO / IEC JTC1/SC21處理過的SQL解釋和修正。在該國際標準的文本中,條款開始于一個新的奇數(shù)頁,并在第5條“詞法要素”到第22條“狀態(tài)碼”,子條款開始于新的一頁。任何由此產(chǎn)生的空白空間不是很大。范圍該國際標準定義了SQL數(shù)據(jù)的數(shù)據(jù)結(jié)構(gòu)和基本操作。它提供了SQL數(shù)據(jù)的創(chuàng)建,獲取,維護,控制,保護的功能。注:該國際標準的構(gòu)架使用數(shù)據(jù)管理的關(guān)系模型描述(ISO/IEC DIS 10032:1991)。該國際標準規(guī)定了對以下幾點的數(shù)據(jù)庫語言的語法和語義:-SQL數(shù)據(jù)的結(jié)構(gòu)和完整性約束的指定和修改,-SQL的數(shù)據(jù)和游標的聲明和調(diào)用操作,-數(shù)據(jù)庫語言過程的聲明,并將其嵌入到標準的編程語言中。它還指定描述SQL數(shù)據(jù)的結(jié)構(gòu)和完整性約束的信息方案。該國際標準-為在多個SQL實現(xiàn)之間的數(shù)據(jù)定義和編譯單元的可移植性提供載體,-為多個SQL實現(xiàn)的互連提供載體,-為在編譯單元中的嵌入式SQL語句,規(guī)定了相關(guān)語法,否則就需要符合特殊的編程語言標準。它定義符合特定編程語言標準的等效的編譯單元。在這等效的編譯單元中,每個嵌入式SQL語句被一些語句替換,這些語句調(diào)用包含了SQL語句的數(shù)據(jù)庫語言過程,-規(guī)定了直接引用SQL語句的語法。該國際標準在以下幾條中,沒有定義方法或綁定的時間-數(shù)據(jù)庫管理系統(tǒng)組件,-SQL數(shù)據(jù)定義的聲明,-SQL過程,-編譯單元,包含了嵌入式SQL。實現(xiàn)該國際標準可能的環(huán)境,還應(yīng)支持應(yīng)用程序的編程語言,終端用戶的查詢語言,報告生成系統(tǒng),數(shù)據(jù)字典系統(tǒng),項目庫系統(tǒng),和分布式通信系統(tǒng),以及數(shù)據(jù)庫設(shè)計,數(shù)據(jù)管理,和性能優(yōu)化等各種工具。規(guī)范性引用下列標準包含的規(guī)定構(gòu)成該國際標準的規(guī)定。該版本自發(fā)布之時有效。所有的標準都受制于修訂,鼓勵基于該國際標準各方達成協(xié)議,調(diào)查應(yīng)用如下所列最新版國際標準的可能性。IEC和ISO的成員維護當(dāng)前有效國際標準的登記。- ISO/IEC 646:1991, Information technology-ISO 7-bit coded character set for information interchange.- ISO/IEC 1539:1991, Information technology-Programming languages-Fortran.- ISO 1989:1985, Programming languages-COBOL. (Endorsement of ANSI X3.23-1985).- ISO 2022:1986, Information technology-ISO 7-bit and 8-bit coded character sets-code extension techniques.- ISO 6160:1979, Programming languages-PL/I (Endorsement of ANSI X3.53-1976).- ISO 7185:1990, Information technology-Programming languages-Pascal.- ISO 8601:1988, Data elements and interchange formats - Information interchange-Representation of dates and times.- ISO 8652:1987, Programming languages-Ada. (Endorsement of ANSI/MIL-STD-1815A-1983).- ISO/IEC 8824:1990, Information technology-Open Systems Interconnection-Specification of Abstract Syntax Notation One (ASN.1).- ISO/IEC 9579-2:1, Information technology - Open Systems Interconnection - Remote Database Access, Part 2: SQL special-ization.- ISO/IEC 9899:1990, Programming languages - C.- ISO/IEC 10206:1991, Information technology-Programming languages-Extended Pascal.- ISO/IEC 10646:1, Information technology-Multiple-octet coded character set._1 即將發(fā)布- ISO/IEC 11756:1, Information technology-Programming languages-MUMPS.定義、記號和約定3.1定義為了該國際標準的目的,應(yīng)用以下定義。3.1.1摘自ISO/IEC 10646標準的定義該國際標準使用的以下條款,摘自ISO/IEC 10646標準:a)character字符b)octet字節(jié)c)variable-length coding 可變長度編碼d)fixed-length coding 固定長度編碼3.1.2摘自ISO 8601標準的定義該國際標準使用的以下條款,摘自ISO 8601標準:a)Coordinated Universal Time (UTC)b)date (date, calendar in ISO 8601)3.1.3該國際標準提供的定義該國際標準定義以下條款:a)可賦值: 值或數(shù)據(jù)類型的特征。這些值或數(shù)據(jù)類型可以賦值給特定數(shù)據(jù)類型的數(shù)據(jù)實例。b)(集合的)基數(shù): 集合中對象數(shù)目. 對象可以相同.c)字符表: 用于明確的目的和應(yīng)用的字符的集合。每個字符表都有一個隱含默認的整理序列。d)可壓縮性: 字符串?dāng)?shù)據(jù)項的屬性,用于管理如何確定該項的整理序列。e)排序規(guī)則;整理序列:對兩個可比較的字符串的排序方法. 每個字符集都有一個默認的整理序列.f)可比較: 兩個數(shù)據(jù)對象的特征,允許一個對象的值和另一個對象的值進行比較。 同樣對于數(shù)據(jù)類型:只有當(dāng)兩個數(shù)據(jù)類型的對象可以比較,才能說這兩個數(shù)據(jù)類型可以比較。g)說明符: SQL對象的編碼描述。 它包含了該對象符合SQL實現(xiàn)要求的所有信息。h)互異:如果兩個值,都為空值,或者根據(jù)第8.2條“ 謂詞比較 ”,它們相等,就認為這兩個值相同。否則,它們是互異的。在兩行(或部分行)中,只要對應(yīng)的值有一個是不同的,則認為兩行(或部分行)是互異的。i)重復(fù):當(dāng)且僅當(dāng)兩個或兩個以上的值或行是相同的,才能認為它們是重復(fù)的。j)二元運算符:具有兩個操作數(shù)(左操作數(shù)和右操作數(shù))的操作符。在該國際標準中一個二元操作符的例子是-減號操作符,該操作符說明左邊操作數(shù)減去右邊操作數(shù)。k)使用形式:在字符串中表現(xiàn)字符的約定或編碼。有些使用形式是定長的編碼,有些是可變長度的編碼。l)使用形式轉(zhuǎn)換:將字符串從一種使用形式轉(zhuǎn)換為另一種使用形式的方法。m)實現(xiàn)定義:不同的SQL實現(xiàn)之間可能不同,由實現(xiàn)者詳細說明每個特別的SQL實現(xiàn)。n)實現(xiàn)依賴:不同的SQL實現(xiàn)之間可能不同,不由該國際標準說明,也不要求實現(xiàn)者說明每個特別的SQL實現(xiàn)。o)一元操作符:只有一個操作數(shù)的操作符.在該國際標準中一元算術(shù)操作符的一個例子是-負號操作符,該操作符說明操作數(shù)為負數(shù)。p)多重集: 對象的無序集合,對象可以相同,集合可以為空。q)n元操作符:具有多個操作數(shù)的操作符。在該國際標準中的n元操作符的例子是COALESCE。r)空值 (null): 一個特殊的值或者標志,用來表明不含任何數(shù)據(jù)值。s)持久: 除非有意去銷毀,否則會一直存在。引用和級聯(lián)動作是有意的。SQL事務(wù)(見子條款 4.28,“SQL事務(wù)”)或SQL會話(見子條款 4.30,“SQL會話”)結(jié)束時附帶的動作不是有意的。t)多余的重復(fù): 除了一個以外,其他的重復(fù)值或行的多重集。u)清單: 見字符表。v)序列: 對象的有序集合。對象可以相同。w)集: 不同對象的無序集合。該集合可為空。.x)SQL-實現(xiàn): 符合該國際標準的數(shù)據(jù)庫管理系統(tǒng)。y)轉(zhuǎn)換:將一個字符表中字符轉(zhuǎn)換成相同或不同字符表中字符的方法。3.2記號該國際標準中使用的語法符號是BNF 的一種擴展版本 (Backus Naur Form or Backus Normal Form)。在BNF中,語言的每個語法元素通過一個產(chǎn)生規(guī)則定義。產(chǎn)生規(guī)則根據(jù)由字符,字符串和語法元素組成的規(guī)則定義元素。在該國際標準中使用的BNF的版本,使用以下符號:符號含義尖括號,用于分隔字符串,字符串為語法元素的名稱,SQL語言的非終結(jié)符。:=定義操作符。用在生成規(guī)則中,分隔規(guī)則定義的元素和規(guī)則定義。 被定義的元素位于操作符的左邊,規(guī)則定義位于操作符的右邊。 方括號表示規(guī)則中的可選元素。方括號中的規(guī)則部分可以明確指定也可以省略。 花括號聚集規(guī)則中的元素。在花括號中的規(guī)則部分必須明確指定。|替換操作符。 該豎線表明豎線之后的規(guī)則部分對于豎線之前的部分是可替換的。 如果豎線出現(xiàn)的位置不在花括號或方括號內(nèi),那么它指定對于該規(guī)則定義的元素的一個完整替換項。如果豎線出現(xiàn)的位置在花括號或方括號內(nèi),那么它指定花括號對或方括號對最里面內(nèi)容的替換項。. . . 省略號表明在規(guī)則中省略號應(yīng)用的元素可能被重復(fù)多次。如果省略號緊跟在閉花括號之后,那么它應(yīng)用于閉花括號和開花括號之間的規(guī)則部分。如果省略號出現(xiàn)在其他任何元素的后面,那么它只應(yīng)用于該元素。!介紹普通英文文本。BNF中沒有表示某語法元素的定義時使用??崭裼脕矸指粽Z法元素。多個空格和多個換行符被視為單個空格。除了上面所給的特殊用途的符號, 在規(guī)則中的其它字符和字符串表示其本義。此外,如果定義操作符右邊的符號全部由BNF中的符號組成,那么這些符號僅代表其本義,不需要考慮其特殊含義。花括號對和方括號對內(nèi)部可以任意嵌套,替換操作符可以出現(xiàn)在嵌套的任何地方。形成任何語法元素實例的字符串可能產(chǎn)生自該元素的BNF定義,產(chǎn)生過程應(yīng)用以下步驟:1) 對于該元素,選擇在產(chǎn)生規(guī)則右邊定義的任意一個選項, 并用該選項替換該元素。2) 替換每個省略號和省略號所應(yīng)用的一個或多個對象的實例。3) 對于方括號中的字符串部分, 要么刪除括號和括號中的內(nèi)容,要么將括號轉(zhuǎn)換為花括號。4) 對于花括號中的字符串部分,對其子字符串應(yīng)用步驟1至步驟5,然后移除花括號。5) 對于仍然在字符串中的非終結(jié)語法元素(如在尖括號中的名稱),應(yīng)用步驟1至步驟5 。當(dāng)字符串中不再存在非終結(jié)符時,擴展過程(或產(chǎn)生過程)完成。約定3.3.1告知性元素告知性的注解在該國際標準正文中出現(xiàn)好幾次。 例如:注: 這是一個注解的例子。這些注解不屬于該國際標準的規(guī)范部分,并且不應(yīng)聲明符合注解中說明的資料。3.3.2語法元素說明根據(jù)以下指定語法元素:-功能: 對于元素意圖的簡短說明。-格式: 元素語法的BNF定義。-語法規(guī)則: 元素語法屬性的詳細說明,或在BNF中沒有表示的,但該元素必須滿足的附加語法約束的詳細說明,或者兩者兼而有之。-訪問規(guī)則: 管理方案對象訪問的規(guī)則的詳細說明,應(yīng)用在通用規(guī)則成功運用之后。-通用規(guī)則: 元素運行時效果的詳細說明。多個通用規(guī)則用來指定元素效果, 所需的效果通過開始第一個通用規(guī)則,并在數(shù)字序列中應(yīng)用中獲得,除非規(guī)則說明或暗示序列中的改變或規(guī)則應(yīng)用結(jié)束。 除非應(yīng)用了特殊規(guī)則,否則通用規(guī)則在序列的最后一條應(yīng)用之后終結(jié)。-分級規(guī)則: 元素如何支持各種級別的SQL的詳細說明。注釋性符號的范圍是定義這些符號的子條款。子條款中,在語法規(guī)則,訪問規(guī)則或者通用規(guī)則中定義的符號可以在其他規(guī)則中引用,引用前需先定義。3.3.3信息方案的詳細說明根據(jù)以下指定該國際標準的信息方案對象:-功能: 對于該定義意圖的簡短說明。-定義: SQL中該對象的定義。-描述: 對該對象運行值的詳細說明,主要針對定義中不清楚的地方。在信息方案中定義視圖的定義只用來說明這些可視化表的內(nèi)容。 這些視圖所基于的實際對象依賴于實現(xiàn)。3.3.4術(shù)語的使用3.3.4.1異常短語“引發(fā)異常狀況:”, 用于通用規(guī)則和其他顯示語句執(zhí)行不成功的地方,通用規(guī)則應(yīng)用, 除了子條款 12.3, , 和子條款 20.1, ,可能中止, 可獲得診斷信息,語句的執(zhí)行對SQL數(shù)據(jù)或方案沒有影響。被異常情況終止的SQL語句的SQL描述符區(qū)域的影響, 除非通過該國際標準顯式定義,否則依賴于實現(xiàn)。短語“引發(fā)完成狀況:”,用于通用規(guī)則和其他顯示通用規(guī)則的應(yīng)用沒有中止,可獲得診斷信息;除非同時引發(fā)了異常狀況,否則語句執(zhí)行成功。語句執(zhí)行時,可能出現(xiàn)多個情況。多個情況的診斷信息是否可用依賴于實現(xiàn)。3.3.4.2語法包含在格式中,如果語法元素對于語法元素出現(xiàn)在BNF產(chǎn)生規(guī)則的右邊,那么就說恰好包含。如果恰好包含或者恰好包含,而又包含,那么包含。在SQL語言中,如果恰好包含,那么就說的一個實例A1恰好包含的一個實例B1 ,并且B1的文本是A1文本的一部分。如果的一個實例A1包含C1或者A1恰好包含的實例B1,而B1又包含C1,那么就說A1包含C1。如果A1包含B1并且A1包含的一個實例C1,C1又包含B1,那么就說A1通過中介包含B1。如果A1包含B1并且A1不包含C1,而C1又包含B1,那么就說A1不通過中介包含B1。如果A1包含B1不通過中介A2或者B2,那么就說A1只包含B1。如果包含,那么包含于,對于來說是一個包含的產(chǎn)生符號。如果簡單包含,那么簡單包含于,對于來說是一個簡單包含的產(chǎn)生符號。假設(shè)A1是的一個實例,B1是的一個實例。如果包含,那么就說A1包含B1或者B1包含于A1。如果僅包含,,那么就說A1簡單包含B1或者B1簡單包含于A1。如果A1滿足C,A2滿足C,但A1不包含A2,那么就說A1在最內(nèi)部滿足條件C。如果A1滿足C,A2滿足C,但A1不包含于A2,那么就說A1在最外部滿足條件C。如果包含一個,標志通過 V 定義的視圖,那么一般包含V中的。如果包含,那么一般包含。如果一般包含 ,一般包含,那么一般包含。如果A1不通過中介或包含B1,那么就說A1直接包含B1。3.3.4.3條款表示規(guī)則要求在語法規(guī)則中,條款應(yīng)定義符合SQL語言語法的條件。只有當(dāng)通用規(guī)則中指定的行動執(zhí)行后,這些依賴于方案內(nèi)容的條件才為真。不符合的SQL格式和語法規(guī)則的語言依賴于實現(xiàn)。當(dāng)嘗試評估訪問或通用規(guī)則并且實現(xiàn)既不是處理不符合的SQL語言也不是以不符合的方式處理符合的SQL語言時,如果語法規(guī)則規(guī)定的任一條件沒有滿足,那么將引發(fā)異常狀況:語法錯誤或違反訪問規(guī)則(如果這種情況發(fā)生在動態(tài)SQL語句執(zhí)行中,那么引發(fā)的異常是動態(tài)SQL語句的語法錯誤或訪問規(guī)則的違反;如果這種情況發(fā)生在直接引用SQL語句中,那么引發(fā)的異常是直接SQL語句的語法錯誤或訪問規(guī)則的違反)。在訪問規(guī)則中,條款應(yīng)定義滿足通用規(guī)則成功應(yīng)用的條件。當(dāng)通用規(guī)則應(yīng)用時,如果任一這種條件沒有滿足,那么將引發(fā)異常狀況:語法錯誤或違反訪問規(guī)則。在分級規(guī)則中,條款應(yīng)定義符合指定級別的SQL語言的條件。3.3.4.4規(guī)則評估次序一個相符的實現(xiàn)并不需要執(zhí)行在一般規(guī)則中定義的精確的行動次序,但是在SQL數(shù)據(jù)和方案上應(yīng)達到相同的效果。該條款是用來有效地強調(diào)行動的效果可以通過實現(xiàn)的不同方式達到。包含和被包含的語法元素的語法規(guī)則和訪問規(guī)則語法元素同時有效應(yīng)用。包含和被包含的語法元素的一般規(guī)則應(yīng)用,被包含的應(yīng)用在前,包含的應(yīng)用在后。當(dāng)運算符的優(yōu)先級取決于該國際標準的格式或者圓括號,這些符號通過該優(yōu)先順序有效地應(yīng)用。當(dāng)運算符不取決于該國際標準的格式或者圓括號,表達式有效的評估一般從左至右。然而,表達式是否從左至右評估是依賴于具體實現(xiàn)的,特別是操作數(shù)或操作符可能引發(fā)情況,或者如果表達式的結(jié)果,在沒有完全評估表達式各個部分的前提下,能夠確定??傊?,如果一個語法元素包含多個其他的語法元素,那么出現(xiàn)在產(chǎn)生規(guī)則前面的語法元素和出現(xiàn)在后面的語法元素一般規(guī)則的應(yīng)用,出現(xiàn)在前面的語法元素早于出現(xiàn)在后面的語法元素。例如,在產(chǎn)生規(guī)則中: := 對于,和語法規(guī)則和訪問規(guī)則同時有效應(yīng)用。對于,和的一般規(guī)則應(yīng)用,在之后,在最后 。如果表達式或者搜索條件的結(jié)果,在沒有完全評估表達式或者搜索條件各個部分的前提下,能夠確定,那么表達式或者搜索條件非必要的評估部分稱為無關(guān)緊要的部分。如果屬于無關(guān)緊要部分的訪問規(guī)則沒有滿足,那么將引發(fā)語法錯誤或違反訪問規(guī)則的異常狀況 ,不管無關(guān)緊要部分是否已經(jīng)評估。如果評估無關(guān)緊要部分引發(fā)異常,那么該異常是否引發(fā)依賴具體實現(xiàn)。3.3.4.5條件規(guī)則條件規(guī)則通過“If”或“Case”慣例指定。通過“Case”慣例指定的規(guī)則包含一個使用“If”慣例的條件子規(guī)則列表。第一個條件成立的“If”子規(guī)則是“Case”規(guī)則下的有效子規(guī)則。“Case”規(guī)則下的最后一個子規(guī)則應(yīng)該聲明為“Otherwise”。如果之前的“If”子規(guī)則條件都不成立,那么該子規(guī)則有效。3.3.4.6語法替代在語法規(guī)則和一般規(guī)則中,短語 X is implicit表明該語法規(guī)則和一般規(guī)則將要解釋成元素X已經(jīng)實際指定。在語法規(guī)則和一般規(guī)則中,短語 the following is implicit: Y 表明該語法規(guī)則和一般規(guī)則將要解釋成已經(jīng)實際上指定語法元素包含Y 。在語法規(guī)則和一般規(guī)則中,短語 former is equivalent to latter 表明該語法規(guī)則和一般規(guī)則將要解釋成元素中之前的實例與之后的實例等效。如果在子條款中引用的BNF非終結(jié)符,沒有說明它如何包含在子條款定義的BNF產(chǎn)生過程中,那么Case:-如果BNF非終結(jié)符是定義在子條款的自身,那么該引用應(yīng)假定為此BNF非終結(jié)符,出現(xiàn)在定義產(chǎn)生規(guī)則左邊。-否則,該引用應(yīng)假定為一個恰好包含特殊的BNF非終結(jié)符的BNF產(chǎn)生規(guī)則。.3.3.4.7其他條款一些語法規(guī)則定義條款,如T1,表示命名或沒有命名的表。這些條款用作表名或相互關(guān)系名稱。條款用作相互關(guān)系名稱,這并不意味著為了命名表而定義任何新的相互關(guān)系名稱,也不影響任何實際的相互關(guān)系名稱。一個SQL語句S1的執(zhí)行是執(zhí)行SQL語句的直接結(jié)果,如果S1是包含在一個已經(jīng)執(zhí)行的中的SQL語句,或者S1是的值,被包含在一個已經(jīng)執(zhí)行的中的所引用,或者S1是的值,其中通過一個與一個關(guān)聯(lián) ,并且被包含在一個已執(zhí)行的所引用。3.3.5描述符描述符是定義指定類型對象實例屬性的數(shù)據(jù)的概念結(jié)構(gòu)的集合。描述符的概念用于指定SQL語義。任何數(shù)據(jù)庫或環(huán)境中都不需要描述符以任何特殊的形式存在。一些SQL對象只有在某些SQL對象的背景中才能存在。例如,列只能存在于表中 。 這些對象通過描述符獨立描述,啟用對象描述符(如:表)包含被啟用對象的描述符(如:列或表約束)。在其他情況下,某些SQL對象只有在另外一些SQL對象存在的前提下才能存在, 即使不存在包含關(guān)系。例如,如果斷言引用的表不存在,那么SQL不允許斷言存在。 因此, 斷言描述符依賴于零個或多個表描述符(等效于, 斷言依賴于零個或多個表). 一般來說,描述符D1依賴或被依賴于另一個描述符D2。有兩種方式顯示依賴。在許多情況下, 依賴構(gòu)建描述符包含依賴構(gòu)建的名稱 。在這種情況下the name of 應(yīng)理解為 sufficient information to identify the descriptor of;因此,實現(xiàn)者可以選擇指針或, 的串聯(lián)等等。此外,描述符可以包含文本(如 , )。在這種情況下, 是否在實現(xiàn)中包含文本或它自身風(fēng)格的解析樹是不相關(guān)的;描述符的有效性明確依賴對象提到的描述符的存在?!傲谢谟颉焙汀傲幸蕾囉谟颉钡刃?。如果一個描述符被其他描述符所依賴,或一個描述符被另一個描述符包含,那么企圖銷毀該描述符很可能會失敗。銷毀一個描述符會導(dǎo)致所有該描述符所包含的描述符被銷毀,但是不影響依賴它的描述符。3.3.6索引排印在該國際標準的索引中,使用以下約定:-以黑體出現(xiàn)的索引條目顯示定義單詞、詞組或者BNF非終結(jié)符的頁;-以斜體出現(xiàn)的索引條目顯示在格式中使用BNF非終結(jié)符的頁;-以羅馬字體出現(xiàn)的索引條目顯示在標題,函數(shù),語法規(guī)則,訪問規(guī)則,通用規(guī)則,分級規(guī)則,表,或其他描述性文本中使用的單詞,詞組或BNF非終結(jié)符。數(shù)據(jù)庫語言SQL的對象標志符功能數(shù)據(jù)庫語言SQL的對象標志符標志在開放的系統(tǒng)環(huán)境中對于其他實體SQL實現(xiàn)的特征。格式 := := := iso | 1 | iso 1 := standard | 0 | standard 0 := 9075 := := | | := 0 | edition1987 0 := := 1 | edition1989 1 := | := 0 | IntegrityNo 0 := 1 | IntegrityYes 1 := 2 | edition1992 2 := | | := 0 | Low 0 := 1 | Intermediate 1 := 2 | High 2 語法規(guī)則1) 除非為,否則不會為。2) 的值標識符合的級別:a) 如果 指定為 , 那么Case:i) , 入門級SQL。ii) , 中級SQL。iii) , 完整級SQL。b) 否則:i) , 級別1.ii) , 級別2.3) 為,意味著完整性增強功能沒有實現(xiàn)。為,意味著完整性增強功能已經(jīng)實現(xiàn)。
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024-2025學(xué)年中學(xué)團委年度工作計劃
- 新疆維吾爾自治區(qū)喀什地區(qū)2024-2025學(xué)年七年級下學(xué)期5月期中數(shù)學(xué)試卷(含解析)
- 音樂教師心理素質(zhì)增強計劃
- 地下管線及智能監(jiān)測設(shè)施保護加固措施
- 市政工程設(shè)備及材料供應(yīng)方案計劃
- 新人教版二年級語文教學(xué)創(chuàng)新計劃
- 高三物理復(fù)習(xí)時間安排計劃
- 電力設(shè)施消防安全責(zé)任人職責(zé)
- 2025年五年級科學(xué)課程教學(xué)計劃
- 招商專員的項目評估職責(zé)
- 2025年甘肅省普通高中學(xué)業(yè)水平合格性考試模擬(六)歷史試題(含答案)
- 高中生物學(xué)業(yè)水平合格性考試:人教版必修1+必修2必背考點
- 廣東省深圳市寶安區(qū)2025年中考二模物理試卷及答案
- 2025年數(shù)字媒體藝術(shù)設(shè)計能力評估試卷及答案
- 北師大版(2024)七年級下冊數(shù)學(xué)期末復(fù)習(xí):解答題壓軸題 尖子生練習(xí)題(含答案解析)
- 安全意識四不傷害培訓(xùn)課件
- 創(chuàng)新型企業(yè)股權(quán)激勵與薪酬績效融合制度設(shè)計
- 磚砌圍墻施工合同協(xié)議
- 應(yīng)聘美團個人簡歷填
- 2025年廣東高中學(xué)業(yè)水平合格性考試化學(xué)試卷試題(含答案解析)
- 2024年山西華陽新材料科技集團有限公司招聘筆試真題
評論
0/150
提交評論