oracle如何連接c,oracle如何連接遠(yuǎn)程數(shù)據(jù)庫(kù)

c連接oracle數(shù)據(jù)庫(kù)的連接語(yǔ)句

連接代碼如下:

成都創(chuàng)新互聯(lián),專(zhuān)注為中小企業(yè)提供官網(wǎng)建設(shè)、營(yíng)銷(xiāo)型網(wǎng)站制作、響應(yīng)式網(wǎng)站設(shè)計(jì)、展示型成都網(wǎng)站建設(shè)、網(wǎng)站制作等服務(wù),幫助中小企業(yè)通過(guò)網(wǎng)站體現(xiàn)價(jià)值、有效益。幫助企業(yè)快速建站、解決網(wǎng)站建設(shè)與網(wǎng)站營(yíng)銷(xiāo)推廣問(wèn)題。

int main()

{

EXEC SQL BEGIN DECLARE SECTION;

char oc_passwd[101]; /*數(shù)據(jù)庫(kù)密碼*/

char oc_userid[101]; /*數(shù)據(jù)庫(kù)用戶(hù)名*/

char oc_dbname[101]; /*數(shù)據(jù)庫(kù)名*/

char oc_coad[101];

EXEC SQL END DECLARE SECTION;

memset(oc_passwd, 0x00, sizeof(oc_passwd));

memset(oc_userid, 0x00, sizeof(oc_userid));

memset(oc_dbname, 0x00, sizeof(oc_dbname));

/*取數(shù)據(jù)庫(kù)用戶(hù)名*/

strcpy(oc_userid, "userid");

/*取數(shù)據(jù)庫(kù)用戶(hù)密碼*/

strcpy(oc_passwd, "passwd") ;

/*取數(shù)據(jù)庫(kù)名*/

strcpy(oc_dbname, "dbname");

EXEC SQL CONNECT :oc_userid

IDENTIFIED BY :oc_passwd

USING :oc_dbname;

if (sqlca.sqlcode != 0)

{

printf("用戶(hù)名[%s]密碼[%s]數(shù)據(jù)庫(kù)[%s]\n", oc_userid, oc_passwd, oc_dbname);

printf("連接數(shù)據(jù)庫(kù)失敗,sqlcode=%d\n", sqlca.sqlcode);

return -1;

}

/*讀table取coad字段*/

memset(oc_coad, 0x00, sizeof(oc_coad));

EXEC SQL SELECT coad

INTO :oc_coad

FROM table

WHERE 1=1;

if (sqlca.sqlcode == NORECORD)

{

printf("查詢(xún)無(wú)記錄\n");

return -1;

}

else if (sqlca.sqlcode != 0)

{

printf("查詢(xún)失敗,sqlcode=%d\n", sqlca.sqlcode);

return -1;

}

return 0;

}

請(qǐng)問(wèn)我用c語(yǔ)言連接oracle 10g,應(yīng)該怎么做?

連接數(shù)據(jù)庫(kù)的方法有很多種。C語(yǔ)言最常用的是ODBC,最好你自己參考下網(wǎng)絡(luò)上關(guān)于ODBC的資料。也可以使用ADO來(lái)連接,這個(gè)比較方便,但需要自己導(dǎo)入ADO的庫(kù)。

其實(shí)不論是什么數(shù)據(jù)庫(kù),只要不是自己純手動(dòng)去連接,其基本連接方法以及操作方法,都是差不多的。比如ADO,不同的數(shù)據(jù)庫(kù),其連接基本上只是連接字符串的不同,系統(tǒng),包括操作系統(tǒng)和數(shù)據(jù)庫(kù)系統(tǒng),在底層都有接口的統(tǒng)一封裝。

c程序通過(guò)什么連接oracle

一般C語(yǔ)言連接oracle數(shù)據(jù)庫(kù)通過(guò)使用oracle提供的OCI接口和PROC編程接口兩種方式。

OCI方式純粹是一些函數(shù)接口。

PROC是oracle提供的一種C與ORACLE SQL的混合編程。程序(以.pc為后綴)編好之后,使用oracle提供的proc預(yù)編譯程序,將pc文件編譯成c文件(這一過(guò)程,相當(dāng)于將SQL轉(zhuǎn)換為OCI的接口),然后再使用c語(yǔ)言編譯器生成可以執(zhí)行文件。

OCI方式不容易入門(mén),它擁有大量的接口函數(shù),要很快熟悉它,非常難。但OCI方式的編程效率很高。

porc方式簡(jiǎn)單易用??捎糜趯?duì)性能要求不太高的項(xiàng)目。

oracle19c怎么連接scott

通過(guò)代碼來(lái)連接。

oracle19c安裝好之后導(dǎo)入scott.sql腳本(可以在oracle的安裝目錄的查找)之后在通過(guò)代碼連接scott就可以登陸了。

Oracle19c也就是12.2.0.3,是OracleDatabase12c和18c系列產(chǎn)品的最終版本,因此也是“長(zhǎng)期支持”版本(以前稱(chēng)為“終端版本”)。

oracle 安裝后如何連接?

前提是電腦必須安裝oracle客戶(hù)端。

配置方法:

1、找到oracle的安裝目錄。如:C:\oracle\product\10.2.0\db_1\network\ADMIN

2、找到tnsnames.ora文件。

3、用文本方式打開(kāi),添加以下內(nèi)容:

本地實(shí)例名?=

(DESCRIPTION?=

(ADDRESS?=?(PROTOCOL?=?TCP)(HOST?=?遠(yuǎn)程數(shù)據(jù)庫(kù)IP地址)(PORT?=?遠(yuǎn)程服務(wù)器端口號(hào)))

(CONNECT_DATA?=

(SERVER?=?DEDICATED)

(SERVICE_NAME?=?遠(yuǎn)程數(shù)據(jù)庫(kù)服務(wù)名)

)

)

其中中文部分是需要修改的部分,除第一個(gè)“本地實(shí)例名”外,其他需要跟遠(yuǎn)程數(shù)據(jù)庫(kù)管理員咨詢(xún),本地實(shí)例名就是方便自己識(shí)別數(shù)據(jù)庫(kù)的一個(gè)名字,可以自定義。

4、然后打開(kāi)pl/sql就能看到自己創(chuàng)建的鏈接,如圖:

怎么把C語(yǔ)言和Oracle11g連接在一起

有三種辦法:

1、用ODBC,安裝ODBC驅(qū)動(dòng),使用微軟提供的ODBC的API訪(fǎng)問(wèn)數(shù)據(jù)庫(kù);

2、用ORACLE提供的OCI API調(diào)用方式;

3、用ORACLE提供的PRO C方式。

如果你熟悉SQL,建議用方式3,如果熟悉ODBC,建議用方式1,方式2比較麻煩些。

以下代碼是我用PRO C編寫(xiě)的,供參考:

int ProcConnect(char * sDatabaseName,char * sUserName, char * sPassword)

{

EXEC SQL CONNECT :sUserName IDENTIFIED BY :sPassword USING :sDatabaseName;

if(DBError("Connect Database failed.")) return FALSE;

else return TRUE;

}

/*===========================================================================*/

void ProcCommit()

{

EXEC SQL COMMIT;

}

/*===========================================================================*/

void ProcCommitRelease()

{

EXEC SQL COMMIT RELEASE;

}

/*===========================================================================*/

void ProcRollback()

{

EXEC SQL ROLLBACK;

}

/*===========================================================================*/

void ProcRollbackRelease()

{

EXEC SQL ROLLBACK RELEASE;

}

/*===========================================================================*/

int DBError(char * sMsg)

{

char sErrMsg[1024];

int nRetCode;

size_t szBuf_len, szMsg_len;

if (sqlca.sqlcode = 0) return FALSE;

szBuf_len = sizeof(sErrMsg);

sqlglm(sErrMsg, szBuf_len, szMsg_len);

sErrMsg[szMsg_len] = 0;

sprintf(sDBErrorBuff,"\r\nSQL DBError point:%s", sMsg);

sprintf(sDBErrorBuff+strlen(sDBErrorBuff),"\r\nsqlcode = %d,%s\r\n", sqlca.sqlcode, rTrim(sErrMsg));

if(OraDBDisconnected)

{

printf("The DBConnection was broken!\r\n");

exit(-1);

}

else nRetCode = TRUE;

printf("%s\r\n",sDBErrorBuff);

return nRetCode;

}

名稱(chēng)欄目:oracle如何連接c,oracle如何連接遠(yuǎn)程數(shù)據(jù)庫(kù)
文章鏈接:http://muchs.cn/article22/hschcc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供服務(wù)器托管、網(wǎng)站制作建站公司、外貿(mào)網(wǎng)站建設(shè)、手機(jī)網(wǎng)站建設(shè)、網(wǎng)站排名

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀(guān)點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

商城網(wǎng)站建設(shè)