写了一个程序,是用sqlapi++连接oracle数据库的
现在想在别的电脑上运行,请问使用sqlapi可以实现这个这个功能么?

解决方案 »

  1.   

    /**/SAConnection con;con.Connect("dbname", "username", "password", SA_Oracle_Client);
      

  2.   

    可以啊。
    #include <stdio.h>  // for printf
    #include <SQLAPI.h> // main SQLAPI++ headerint main(int argc, char* argv[])
    {
        SAConnection con; // 连接数据对象
        SACommand cmd(
            &con,
            "Select fid, fvarchar20 from test_tbl"); // 命令对象,其中包含了一个查询语句,
        
        try
        {        
            // 连接数据库
            // 在这个例程中连接的是Oracle数据库,
            // 当然它也可以连接 Sybase, Informix, DB2
            // SQLServer, InterBase, SQLBase and ODBC
            con.Connect("test", "tester", "tester", SA_Oracle_Client);        // 执行查询语句
            cmd.Execute();
            // 显示查询后的结果
            while(cmd.FetchNext())
            {
                printf("Row fetched: fid = %ld, fvarchar20 = '%s'\n", 
                    cmd.Field("fid").asLong(),
                    (const char*)cmd.Field("fvarchar20").asString());
            }        // 提交当前事务
            con.Commit();        printf("Rows selected!\n");
        }
        catch(SAException &x)
        {
            // 异常处理
            try
            {
                // 退出当前事务
                con.Rollback();
            }
            catch(SAException &)
            {
            }
            // 显示错误信息
            printf("%s\n", (const char*)x.ErrText());
        }
        
        return 0;
    }
      

  3.   

    LZ有空可以去看看SQLAPI++ Library ,讲得很详细,包看包会
      

  4.   

    晕,我现在的情况是,我已经连上了数据库,格式也是和你写的一样
    但是数据库和程序是在同一台电脑上,
    我想知道如果程序拿到局域网另外一台只有oracle但没有数据的电脑上
    应该怎么运行才能连接到我这台电脑的数据库
      

  5.   

    这个是本地的数据库直连,sqlapi能实现局域网连接数据库的功能吗?
      

  6.   

    通过SID就能连接了,TNSPing下看看
      

  7.   

    :( 第一次用oracle,具体应该怎么做呢?
    connect()不需要变化吗