sql >> データベース >  >> RDS >> Oracle

C++プログラムとOracleの接続

    Oracleの から ウェブサイト、ここに有効な例があります:

    const string userName = "HR";
    const string password = "password";
    const string connectString = "";
    
    Environment *env = Environment::createEnvironment();
    
    {
       Connection *conn = env->createConnection(userName, password, connectString);
       Statement *stmt = conn->createStatement("SELECT blobcol FROM mytable");
       ResultSet *rs = stmt->executeQuery();
       rs->next();
       Blob b = rs->getBlob(1);
       cout << "Length of BLOB : " << b.length();
       ...
       stmt->closeResultSet(rs);
       conn->terminateStatement(stmt);
       env->terminateConnection(conn);
    }
    
    Environment::terminateEnvironment(env);
    

    あなたのコードは正しい方向にあるようです。そのため、一部のライブラリが欠落しているようです!

    繰り返しになりますが、OracleのWebサイトの別のページ から 、必要なライブラリは次のとおりです:

    • OCIインスタントクライアントデータ共有ライブラリ( libociei.so LinuxとUNIXの場合、およびWindowsの場合はoraociei12.dll)。このファイルを正しくインストールすると、インスタントクライアントモードで操作しているかどうかが決まります
    • クライアントコードライブラリ( libclntsh.so.12.2 LinuxとUNIXの場合、およびWindowsの場合はoci.dll)
    • セキュリティライブラリ( libnnz12.so LinuxとUNIXの場合、およびWindowsの場合はorannzsbb12.dll)
    • OCCIライブラリ( libocci.so.12.2 LinuxとUNIXの場合、およびWindowsの場合はoraocci12.dll)

    これらのライブラリがマシンにインストールされていることを確認してください。



    1. mysql_real_escape_stringは未定義です

    2. YouTubeの埋め込みリンクをデータベースに保存するにはどうすればよいですか

    3. mysqlクエリが失敗したときにエラーログがありますか?

    4. PostgreSQL:同じクエリで計算列を使用する