C#连接Oracle数据库,以下来自微软官方文档。
using Oracle.ManagedDataAccess.Client;
using System;
using System.Data;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
string constr = "User Id=scott;Password=orcl;Data Source=orcl";
OracleConnection con = new OracleConnection(constr);
con.Open();
string cmdQuery = "select ename, empno from emp";
// Create the OracleCommand
OracleCommand cmd = new OracleCommand(cmdQuery);
cmd.Connection = con;
cmd.CommandType = CommandType.Text;
// Execute command, create OracleDataReader object
OracleDataReader reader = cmd.ExecuteReader();
while (reader.Read())
{
// output Employee Name and Number
Console.WriteLine("Employee Name : " + reader.GetString(0) + " , " +
"Employee Number : " + reader.GetDecimal(1));
}
Console.ReadKey();
// Clean up
reader.Dispose();
cmd.Dispose();
con.Dispose();
}
}
}
GetString()方法中参数是返回列的索引,从0开始。例如本例中返回了 ename和empno两列,所以GetString(0)就是获取ename, GetDecimal(1)就是获取第二列,即empno。使用GetXY()必须要事先知道所要获取的列的类型,进而确定XY是什么,类型不匹配会报错。
输出界面如下: