using System;
using System.Data;
using System.Data.Common;
using Oracle.DataAccess.Client;
class FactorySample
{
static void Main()
{
// string constr = "user id=hr;password=hr;data source=ora11g ";
// DbProviderFactory factory =
// DbProviderFactories.GetFactory("Oracle.DataAccess.Client");
//DbConnection conn = factory.CreateConnection();
// conn.ConnectionString = constr;
// conn.Open();
OracleConnection conn = new OracleConnection("Data Source=ora11g; User Id=hr;Password=hr;");
OracleCommand cmd = new OracleCommand();
cmd.Connection = conn;
cmd.CommandText = "COUNT_JOB_HISTORY";
cmd.CommandType = CommandType.StoredProcedure;
// instead of OracleType use OracleDbType instead of number use C# Int64 below !!!!!!
cmd.Parameters.Add("reccount", OracleDbType.Int64).Direction = ParameterDirection.Output;
/* or can use below lines to add parameters
OracleParameter reccount = new OracleParameter();
reccount.OracleDbType = OracleDbType.Int64;
reccount.Direction = ParameterDirection.Output;
reccount.ParameterName = "reccount";
cmd.Parameters.Add(reccount);
OracleParameter nr2 = new OracleParameter();
nr2.OracleDbType = OracleDbType.Int64;
nr2.Direction = ParameterDirection.Input;
nr2.ParameterName = "nr2";
nr2.Value = 10;
oCmd.Parameters.Add(nr2);
*/
conn.Open();
cmd.ExecuteNonQuery();
conn.Close();
Console.WriteLine(cmd.Parameters["reccount"].Value);
Console.ReadLine();
}
}
取消
评论