當前位置:首頁 » 編程語言 » c語言連接oracle

c語言連接oracle

發布時間: 2022-07-10 17:30:11

A. 有關c語言的proc連接oracle資料庫的問題

在main.pc的insert 函數前加上extern


extern void insert (char password_[6],char id_[20],int balance_);

B. C語言的程序怎麼連接甲骨文資料庫

一般C語言連接oracle資料庫通過使用oracle提供的OCI介面和PROC編程介面兩種方式。
OCI方式純粹是一些函數介面。
PROC是oracle提供的一種C與ORACLE sql的混合編程。程序(以.pc為後綴)編好之後,使用oracle提供的proc預編譯程序,將pc文件編譯成c文件(這一過程,相當於將SQL轉換為OCI的介面),然後再使用c語言編譯器生成可以執行文件。
OCI方式不容易入門,它擁有大量的介面函數,要很快熟悉它,非常難。但OCI方式的編程效率很高。
porc方式簡單易用。可用於對性能要求不太高的項目。

C. C語言用oci連oracle到底是怎麼樣的一個機制

c語言使用oci連接oracle的程序就是常說的pro*C,就是在C程序中內置sql實現一定得功能,當然既然是sql的話就需要連接資料庫,連接資料庫就有遠程和本地的區別,而遠程如果使用OCI自然要通過客戶端這是避免不了的。在實際開發中一般把pro*C放到伺服器上供別的程序調用。
如果不想這樣,使用odbc連接可以省去安裝客戶端的煩惱,但是安裝odbc驅動是必須的。

D. 怎麼把C語言和Oracle11g連接在一起

有三種辦法:
1、用ODBC,安裝ODBC驅動,使用微軟提供的ODBC的API訪問資料庫;
2、用ORACLE提供的OCI API調用方式;
3、用ORACLE提供的PRO C方式。
如果你熟悉SQL,建議用方式3,如果熟悉ODBC,建議用方式1,方式2比較麻煩些。
以下代碼是我用PRO C編寫的,供參考:
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;
}

E. C語言程序連接oracle資料庫高可用報ora03115錯

可以的。
OracleDatabase,又名OracleRDBMS,或簡稱Oracle。是甲骨文公司的一款關系資料庫管理系統。它是在資料庫領域一直處於領先地位的產品。可以說Oracle資料庫系統是世界上流行的關系資料庫管理系統,系統可移植性好、使用方便、功能強,適用於各類大、中、小微機環境。它是一種高效率的、可靠性好的、適應高吞吐量的資料庫方案。
C語言誕生於美國的貝爾實驗室,由丹尼斯·里奇(DennisMacAlistairRitchie)以肯尼斯·藍·湯普森(KennethLaneThompson)設計的B語言為基礎發展而來,在它的主體設計完成後,湯普森和里奇用它完全重寫了UNIX,且隨著UNIX的發展,c語言也得到了不斷的完善。為了利於C語言的全面推廣,許多專家學者和硬體廠商聯合組成了C語言標准委員會,並在之後的1989年,誕生了第一個完備的C標准,簡稱「C89」,也就是「ANSIC」,截至2020年,最新的C語言標准為2018年6月發布的「C18」。

F. 如何利用C語言,oracle資料庫開發出一個進銷存系統

這個涉及到數據結構和資料庫知識。
要在C語言中設計好數據的結構體,然後熟悉文件的讀寫操作。將文件保存成資料庫可以識別的文件格式才行。
或者直接在ORACLE裡面建立數據源,然後閱讀一些oracle的數據操縱語言,通過C的一些編譯器來連接資料庫,設定數據源。
所以在下還是建議你看看oracle與C語言的訪問書籍。

G. 如何利用C語言,oracle資料庫開發出一個進銷存系統

這個涉及到數據結構和資料庫知識。要在C語言中設計好數據的結構體,然後熟悉文件的讀寫操作。將文件保存成資料庫可以識別的文件格式才行。或者直接在ORACLE裡面建立數據源,然後閱讀一些oracle的數據操縱語言,通過C的一些編譯器來連接資料庫,設定數據源。可以看看oracle與C語言的訪問書籍。

H. c語言程序通過ODBC連接Oracle資料庫

參考答案: 東飛伯勞西飛燕,黃姑織女時相見。

I. c語言訪問oracle資料庫有幾種方式,哪種最好

SQL SERVER連接oracle資料庫幾種方法--1 方式 --查詢oracle資料庫中的表 SELECT * FROM OPENDATASOURCE( 'MSDAORA', 'Data Source=GE160;User ID=DAIMIN;Password=DAIMIN' )..

J. c連接oracle資料庫的連接語句

連接代碼如下:
int main()
{
EXEC SQL BEGIN DECLARE SECTION;
char oc_passwd[101]; /*資料庫密碼*/
char oc_userid[101]; /*資料庫用戶名*/
char oc_dbname[101]; /*資料庫名*/
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));

/*取資料庫用戶名*/
strcpy(oc_userid, "userid");

/*取資料庫用戶密碼*/
strcpy(oc_passwd, "passwd") ;

/*取資料庫名*/
strcpy(oc_dbname, "dbname");

EXEC SQL CONNECT :oc_userid
IDENTIFIED BY :oc_passwd
USING :oc_dbname;
if (sqlca.sqlcode != 0)
{
printf("用戶名[%s]密碼[%s]資料庫[%s]\n", oc_userid, oc_passwd, oc_dbname);
printf("連接資料庫失敗,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("查詢無記錄\n");
return -1;
}
else if (sqlca.sqlcode != 0)
{
printf("查詢失敗,sqlcode=%d\n", sqlca.sqlcode);
return -1;
}
return 0;
}

熱點內容
滑板鞋腳本視頻 發布:2025-02-02 09:48:54 瀏覽:432
群暉怎麼玩安卓模擬器 發布:2025-02-02 09:45:23 瀏覽:557
三星安卓12彩蛋怎麼玩 發布:2025-02-02 09:44:39 瀏覽:743
電腦顯示連接伺服器錯誤 發布:2025-02-02 09:24:10 瀏覽:537
瑞芯微開發板編譯 發布:2025-02-02 09:22:54 瀏覽:146
linux虛擬機用gcc編譯時顯示錯誤 發布:2025-02-02 09:14:01 瀏覽:233
java駝峰 發布:2025-02-02 09:13:26 瀏覽:651
魔獸腳本怎麼用 發布:2025-02-02 09:10:28 瀏覽:532
linuxadobe 發布:2025-02-02 09:09:43 瀏覽:212
sql2000資料庫連接 發布:2025-02-02 09:09:43 瀏覽:726