最合适的方式,是使用:Oracle Data Access Components - .NET
下载地址:
using Oracle.ManagedDataAccess.Client;
using System.Data;
namespace OracleDBtest
{
class Program
{
static void Main(string[] args)
{
string conn_str = "DATA SOURCE=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=localhost)(PORT=1521)))(CONNECT_DATA=(SID = orcl)));PERSIST SECURITY INFO=True;USER ID=test;PASSWORD=123;";
string SQL_cmd = "select * from Products where id=:id and type=:product_type ";
using (OracleConnection conn = new OracleConnection(conn_str))
{
if (conn.State == ConnectionState.Closed)
{
conn.Open();
}
OracleCommand cmd = new OracleCommand(SQL_cmd, conn);
//BindByName預設為false,SQL會依照順序代入參數
//若設為true時,則依參數名稱代入參數
cmd.BindByName = true;
//加入參數
cmd.Parameters.Clear();
cmd.Parameters.Add("id", "10");
cmd.Parameters.Add("product_type", "desktop");
OracleDataAdapter DataAdapter = new OracleDataAdapter();
DataAdapter.SelectCommand = cmd;
DataSet ds = new DataSet();
DataAdapter.Fill(ds);
//查詢到的資料都存在ds中了
}
}
}
}
以上代码,需要在Project里加入对Oracle.ManagedDataAccess.dll的引用,否则using Oracle.ManagedDataAccess.Client无法使用。(在Oracle主页下载的程序安装目录里有。)









网友评论