應用程序連接數據庫的方法


通過嵌套SQL的宿主語言

  通過應用程序接口,允許將SQL查詢傳給數據庫

  ODBC、JDBC

  其他:如RDO,ADO和OLEDB這些接口目前並不能代替ODBC

補充ODBC

  Open Database Connectivity

  它是一種用來在相關或不相關的數據庫管理系統(DBMS)中存取數據的,用C語言實現的、標准應用程序數據接口。

  通過ODBC API,應用程序可以存取保存在多種不同數據庫管理系統(DBMS)中的數據,而不論每個DBMS使用了何種數據存儲格式和編程接口。

JDBC

  是一種可用於執行SQL語句的Java API。它由一些Java語言編寫的類和界面組成。

  DBC為數據庫應用開發人員,數據庫前台工具開發人員提供了一種標准的應用程序設計接口,使開發人員可以用純Java語言編寫完整的數據庫應用程序。

嵌入式SQL

  將SQL嵌入到某種高級語言(又稱主語言)中使用,利用高級語言的過程性結構來彌補SQL實現的復雜應用方面的不足

  SQL語句負責操縱數據庫,主語言語句負責控制程序流程

嵌入式SQL的一般形式

  EXEC SQL前綴用以區分SQL語句與主語言語句

    EXEC SQL <SQL語句>;

  DBMS多采用預編譯方式處理宿主語言SQL

  嵌入式SQL語句包括

    說明性語句

    可執行語句:數據定義、數據控制、數據操縱

與主語句之間的通信

  數據庫工作單元與源程序工作單元如何通信?

  (1)用SQL通信區向主語言傳遞SQL語句執行狀態信息

  (2)主語言通過主變量向SQL語句提供參數

  (3)SQL語句查詢數據庫的結果通過主變量和游標交主語言進一步處理

 游標

  SQL語言是集合處理的方式,主語言是單記錄處理方式,如何協調?

  引入游標

    游標是系統為用戶開設的一個數據緩沖區,存放SQL語句的執行結果

    每個游標區都有一個名字

    用戶通過游標逐一獲取記錄,並賦給主變量,交主語言進一步處理

游標的使用

  說明游標

    EXEC SQL DECLARE <游標名> CURSOR FOR <SELECT語句>;

  打開游標

    EXEC SQL OPEN<游標名>;

  推進游標並獲取當前記錄(通常在循環結構中使用)

    EXEC SQL FETCH <游標名> INTO <主變量> [,<主變量>]...;

  關閉游標

    EXEC SQL CLOSE <游標名>

  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM