簡體   English   中英

連接到C ++中的sql嗎?

[英]connect to sql in c++?

我想使用c ++連接到sql。

我在UNIX計算機上安裝了g ++(sparc-sun-solaris2.10-g ++),SQL版本為SQL * Plus:10.2.0.4.0版。

我想編寫一個我想通過它連接到sql的c ++代碼。

使用shell腳本,我可以輕松地連接到數據庫,但是使用c ++,我不知道該怎么做。

謝謝 。

我有這段代碼,但是在編譯時失敗了:

錯誤:

創建庫libr9.so 20110308_083331

ld:致命:文件/tlmsr1/tlm/rt/kimi/proj/c9rprOG/crp/templates.a:打開失敗:沒有此類文件或目錄ld:致命:文件/ tlmsr1 / tlm / rt / kimi / proj / c9rprOG / crp / templates.a:打開失敗:沒有這樣的文件或目錄ld:致命:文件處理錯誤。 沒有將輸出寫入/tlmsr1/tlm/rt/kimi/proj/c9rprOG/lib/libcrpr9.so gmake: * [libr9.so]錯誤1

代碼:

#include <stdlib.h>
#include <occi.h>
#include <iostream>
using namespace oracle::occi;
using namespace std;



class testOcci
{
  private:

  Environment *env;
  Connection *conn;

  public:

 testOcci (string user, string passwd, string db)
  {
    env = Environment::createEnvironment (Environment::DEFAULT);
    conn = env->createConnection (user, passwd, db);
  }

  /**
   * Destructor for the occi test case.
   */
  ~testOcci ()
  {
    env->terminateConnection (conn);
    Environment::terminateEnvironment (env);
  }  // end of ~testOcci ()

};

int main(void)
{
string user="sbsdb6";
string passwd="sbsdb6";
string db="ABPDV";

testOcci *demo = new testOcci (user, passwd, db);
cout << "Creation Successful" << endl;
delete (demo);
cout << "Deletion Successful" << endl;

return 0;
}

因為當您說sql時似乎就意味着Oracle ,所以我想嘗試OCCI 在這種情況下, 此鏈接可能會有所幫助。

但是...使用OCCI與通過SQL*Plus使用shell腳本連接到Oracle有很大不同

您可能還會看看這兩個庫。 OTLSOCI 我在某些項目中都使用了它們,它們對我來說很好。

您需要使用ODBC庫來連接和檢索RDBMS中的數據。 似乎是一個很好的起點。

嘗試名為CDatabase的類。 創建到數據庫的連接。 還有一個名為ExecuteSQL()的函數,您可以使用它執行查詢。 為了獲取結果,您具有CResultSet類。 如果您在這里發現困難,請寄樣品。

感謝Arun P.

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM