時間:2022-11-09 12:30:01 | 來源:信息時代
時間:2022-11-09 12:30:01 來源:信息時代
SQL對象語言綁定 : 定義在Java語言中支持嵌入式SQL的規(guī)范機制。在SQL系列標準中SQL對象語言綁定是系列標準的第十部分,國際標準的命名是Information Technology—Database Languages—SQL—Part 10Object Language Bindings,通常縮寫為SQL/OLB,其標準編號為ISO/IEC 9075-10。
SQL對象語言綁定作為SQL語言的擴展,使得在Java語言中支持嵌入式SQL,這也稱為SQLJ。在這個部分的標準中主要定義SQLJ的語法和語義,以及保證生成的SQLJ的二進制可移植性的機制。另外,還說明了一些Java包和它們包含的類及方法。
SQL對象語言綁定的主要內(nèi)容在1998年就已經(jīng)作為一個ANSI標準提出,等價于SQLJ的部分0。SQL對象語言綁定作為一個ISO標準,則是正式出現(xiàn)在SQL 2003中。標準的命名由SQLJ改為SQL對象語言綁定,是希望SQLJ作為第一個綁定SQL的面向?qū)ο缶幊陶Z言,今后還可能在更多的面向?qū)ο缶幊陶Z言中綁定SQL。
1. 嵌入語法
SQLJ包括一組子句,這些子句擴展了Java程序來包括SQL結構。SQLJ翻譯器是一個實用程序,用來將這些SQLJ子句轉換成標準的Java代碼,并通過一個調(diào)用接口來訪問數(shù)據(jù)庫。SQLJ翻譯器輸出的是一個新產(chǎn)生的Java源程序,這樣就能被任何Java編譯器編譯。包含嵌入SQL的Java程序負責SQL語句的靜態(tài)分析、語法檢查、類型檢查和模式校驗的工作。
嵌入SQL宿主程序是一個編譯單元,由程序語言文本和SQL文本組成。SQL文本應該包括一個或多個嵌入SQL子句和嵌入SQL聲明段,SQL語句被直接嵌入到這個編譯單元中。當嵌入SQL宿主程序直接包含一個嵌入SQL Java程序時,其中的SQL語句用Java語言中的JDBC類替代了,命名空間將被保留用于變量名、內(nèi)部類名和源文件名。
在SQLJ程序中支持的SQL結構包括查詢、SQL數(shù)據(jù)操縱語句(DML)、事務控制、數(shù)據(jù)定義語言、存儲過程調(diào)用等,SQL語言中的元素由SQLJ按不同的方式處理。
2. 相關Java包
sqlj.runtime包定義SQLJ程序員使用的運行時類和接口。它包含AsciiStream、BinaryStream、DefaultRuntime、ExecutionContext、RuntimeContext、StreamWrapper、UnicodeStream、CharacterStream和SQLNullException這些直接由SQLJ程序員使用的實用程序類,以及像ResultSetIterator等一些作為類聲明部分的接口類。
sql.runtime.profile包定義能夠進行二進制可移植性SQLJ程序的類和接口。它和sqlj.runtime包不同,它定義了SQLJ運行時實現(xiàn)用到但SQLJ程序不可見的類,例如DefaultLoader類。
微信公眾號
版權所有? 億企邦 1997-2022 保留一切法律許可權利。