刘涛王珂节目:vc如何访问oracle?求一实例

来源:百度文库 编辑:高校问答 时间:2024/05/05 07:40:21

下 面 的 程 序 是 一 个 联 结 数 据 库 的PRO*C 源 程 序 例 子。

#include < sqlca.h > //声明SQL通讯区
#include < string.h >
#include < afxwin.h >
EXEC SQL BEGIN DECLARE SECTION;
VARCHAR username[20]; //声明宿主变量
VARCHAR password[20];
VARCHAR dbname[20];
EXEC SQL END DECLARE SECTION;
void db_connect()
{
strcpy((char *)username.arr,"SCOTT");
username.len = strlen((char *)username.arr);
strcpy((char *)password.arr,"TIGER");
password.len = strlen((char *)password.arr);
strcpy((char *)dbname.arr,"SUNDB");
dbname.len = strlen((char *)dbname.arr);
EXEC SQL WHENEVER SQLERROR STOP; //隐式异常处理
EXEC SQL CONNECT :username
IDENTIFIED BY :password USING :dbname;
/*if (sqlca.sqlcode != 0) //显式异常处理
{
AfxMessageBox("\n与 Oracle数据库连接失败!");
return;
}*/
}

干脆我发给你吧

OracleConnection connection = new OracleConnection("Password=password;User ID=username;Data Source=source");

OracleCommand command = new OracleCommand("select * from table", connection);
connection.Open();
OracleDataReader reader = command.ExecuteReader();
try
{
while (reader.Read())
{
Console.WriteLine(reader.GetInt32(0) + ", " + reader.GetInt32(1));
}
}
finally
{
// always call Close when done reading.
reader.Close();
}

connection.Close();