日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
對(duì)Oracle數(shù)據(jù)庫編程的總結(jié)

本文是對(duì)Oracle數(shù)據(jù)庫編程的總結(jié) ,現(xiàn)在有很多的常用的數(shù)據(jù)庫,其中包括Oracle, MS SQL Server, Sybase, Informix, MySQL, DB2, Interbase / Firebird, PostgreSQL, SQLite, SAP/DB, TimesTen, MS ACCESS等等。

目前創(chuàng)新互聯(lián)建站已為上千家的企業(yè)提供了網(wǎng)站建設(shè)、域名、網(wǎng)站空間、網(wǎng)站運(yùn)營、企業(yè)網(wǎng)站設(shè)計(jì)、濟(jì)南網(wǎng)站維護(hù)等服務(wù),公司將堅(jiān)持客戶導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長,共同發(fā)展。

數(shù)據(jù)庫編程是對(duì)數(shù)據(jù)庫的創(chuàng)建、讀寫等一列的操作。

數(shù)據(jù)庫編程分為數(shù)據(jù)庫客戶端編程與數(shù)據(jù)庫服務(wù)器端編程。數(shù)據(jù)庫客戶端編程主要使用ODBC API、ADO、ADO.NET、OCI、OTL等方法;數(shù)據(jù)庫服務(wù)端編程主要使用OLE DB等方法。Oracle數(shù)據(jù)庫編程需要掌握一些訪問數(shù)據(jù)庫技術(shù)方法,還需要注意怎么設(shè)計(jì)高效的數(shù)據(jù)庫、數(shù)據(jù)庫管理與運(yùn)行的優(yōu)化、數(shù)據(jù)庫語句的優(yōu)化。

一、訪問數(shù)據(jù)庫技術(shù)方法

數(shù)據(jù)庫編程分為數(shù)據(jù)庫客戶端編程與數(shù)據(jù)庫服務(wù)器端編程。數(shù)據(jù)庫客戶端編程主要使用ODBC API、ADO、ADO.NET、OCI、OTL等方法;數(shù)據(jù)庫服務(wù)端編程主要使用OLE DB等方法。

1、幾種是數(shù)據(jù)庫訪問方法比較

ODBC API是一種適合數(shù)據(jù)庫底層開發(fā)的編程方法,ODBC API提供大量對(duì)數(shù)據(jù)源的操作,ODBC API能夠靈活地操作游標(biāo),支持各種幫定選項(xiàng),在所有ODBC相關(guān)編程中,API編程具有最高的執(zhí)行速度。

DAO提供了很好的Oracle數(shù)據(jù)庫編程的對(duì)象模型.但是,對(duì)數(shù)據(jù)庫的所有調(diào)用以及輸出的數(shù)據(jù)都必須通過Access/Jet數(shù)據(jù)庫引擎,這對(duì)于使用數(shù)據(jù)庫應(yīng)用程序,是嚴(yán)重的瓶頸。

OLE DB提供了COM接口,與傳統(tǒng)的數(shù)據(jù)庫接口相比,有更好的健壯性和靈活性,具有很強(qiáng)的錯(cuò)誤處理能力,能夠同非關(guān)系數(shù)據(jù)源進(jìn)行通信。

ADO最主要的優(yōu)點(diǎn)在于易于使用、速度快、內(nèi)存支出少和磁盤遺跡小。

ADO.NET 是利用數(shù)據(jù)集的概念將數(shù)據(jù)庫數(shù)據(jù)讀入內(nèi)存中,然后在內(nèi)存中對(duì)數(shù)據(jù)進(jìn)行操作,最后將數(shù)據(jù)集數(shù)據(jù)回寫到源數(shù)據(jù)庫中。

OTL 是 Oracle, Odbc and DB2-CLI Template Library 的縮寫,是一個(gè)C++編譯中操控關(guān)系數(shù)據(jù)庫的模板庫, OTL中直接操作Oracle主要是通過Oracle提供的OCI接口進(jìn)行,進(jìn)行操作DB2數(shù)據(jù)庫則是通過CLI接口來進(jìn)行,至于MS的數(shù)據(jù)庫和其它一些數(shù)據(jù)庫,則OTL只提供了ODBC來操作的方式。

當(dāng)然Oracle和DB2也可以由OTL間接使用ODBC的方式來進(jìn)行操縱。具有以下優(yōu)點(diǎn):跨平臺(tái);運(yùn)行效率高,與C語言直接調(diào)用API相當(dāng);開發(fā)效率高,起碼比ADO.net使用起來更簡單,更簡潔;部署容易,不需要ADO組件,不需要.net framework 等。

2、VC數(shù)據(jù)庫編程幾種方法

VC數(shù)據(jù)庫編程幾種方法,包括ODBC連接、MFC ODBC連接、DAO連接、OLE DB、OLE DB Templates連接、ADO、Oracle專用方法(OCI(Oracle Call Interface)訪問、Oracle Object OLE C++ Class Library )。

<1.>通用方法

1. ODBC連接

ODBC(Open DataBase Connectivity)是MSOA的一部分,是一個(gè)標(biāo)準(zhǔn)數(shù)據(jù)庫接口。它提供對(duì)關(guān)系數(shù)據(jù)庫訪問的統(tǒng)一接口,實(shí)現(xiàn)對(duì)異構(gòu)數(shù)據(jù)源的一致訪問。

ODBC數(shù)據(jù)訪問由以下部分組成:

<1>句柄(Handles):ODBC使用句柄來標(biāo)識(shí)ODBC環(huán)境、連接、語句和描述器.

<2>緩存區(qū)(Buffers):

<3>數(shù)據(jù)類型(Data types)

<4>一致性級(jí)別(Conformance levels)

用ODBC設(shè)計(jì)客戶端的一般步驟:

<1>分配ODBC環(huán)境

<2>分配連接句柄

<3>連接數(shù)據(jù)源

<4>構(gòu)造和執(zhí)行SQL語句

<5>獲得查詢結(jié)果

<6>斷開數(shù)據(jù)源的連接

<7>釋放ODBC環(huán)境

ODBC API是一種適合數(shù)據(jù)庫底層開發(fā)的編程方法,ODBC API提供大量對(duì)數(shù)據(jù)源的操作,ODBC API能夠靈活地操作游標(biāo),支持各種幫定選項(xiàng),在所有ODBC相關(guān)編程中,API編程具有最高的執(zhí)行速度.因此,ODBC API編程屬于底層編程。

2. MFC ODBC連接

MFC ODBC是MFC對(duì)ODBC進(jìn)行的封裝,以簡化對(duì)ODBC API的 調(diào)用,從而實(shí)現(xiàn)面向?qū)ο蟮腛racle數(shù)據(jù)庫編程接口.

MFC ODBC的封裝主要開發(fā)了CDatabase類和CRecordSet類

(1) CDatabase類

CDatabase類用于應(yīng)用程序建立同數(shù)據(jù)源的連接。CDatabase類中包含一個(gè)m_hdbc變量,它代表了數(shù)據(jù)源的連接句柄。如果要建立CDatabase類的實(shí)例,應(yīng)先調(diào)用該類的構(gòu)造函數(shù),再調(diào)用Open函數(shù),通過調(diào)用,初始化環(huán)境變量,并執(zhí)行與數(shù)據(jù)源的連接。在通過Close函數(shù)關(guān)閉數(shù)據(jù)源。

CDatabase類提供了對(duì)數(shù)據(jù)庫進(jìn)行操作的函數(shù)及事務(wù)操作。

(2) CRecordSet類

CRecordSet類定義了從數(shù)據(jù)庫接收或者發(fā)送數(shù)據(jù)到數(shù)據(jù)庫的成員變量,以實(shí)現(xiàn)對(duì)數(shù)據(jù)集的數(shù)據(jù)操作。

CRecordSet類的成員變量m_hstmt代表了定義該記錄集的SQL語句句柄,m_nFields為記錄集中字段的個(gè)數(shù),m_nParams為記錄集所使用的參數(shù)個(gè)數(shù)。

CRecordSet的記錄集通過CDatabase實(shí)例的指針實(shí)現(xiàn)同數(shù)據(jù)源的連接,即CRecordSet的成員變量m_pDatabase.

MFC ODBC編程更適合于界面型數(shù)據(jù)庫應(yīng)用程序的開發(fā),但由于CDatabase類和CRecordSet類提供的數(shù)據(jù)庫操作函數(shù)有限,支持的游標(biāo)類型也有限,限制了高效的數(shù)據(jù)庫開發(fā)。在編程層次上屬于高級(jí)編程。

【編輯推薦】

  1. Oracle查詢分頁的存儲(chǔ)過程實(shí)際代碼示例
  2. Oracle數(shù)據(jù)庫的安全,PL/SQL的SQL注入
  3. Oracle應(yīng)用顧問發(fā)展計(jì)劃 著力培養(yǎng)實(shí)用型軟件人才
  4. Oracle 字符串split的相關(guān)實(shí)際應(yīng)用代碼介紹
  5. Oracle創(chuàng)建Split 與Map 函數(shù)的代碼示例

本文名稱:對(duì)Oracle數(shù)據(jù)庫編程的總結(jié)
轉(zhuǎn)載來于:http://www.dlmjj.cn/article/djdjjjs.html