C# 调用ORACLE 存储过程
以下是使用C#调用Oracle存储过程的示例代码:
using System;
using System.Data;
using Oracle.DataAccess.Client;
class Program
{
static void Main(string[] args)
{
string connectionString = "Data Source=<your data source>;User Id=<your user id>;Password=<your password>;";
using (OracleConnection connection = new OracleConnection(connectionString))
{
connection.Open();
OracleCommand command = new OracleCommand("your_stored_procedure_name", connection);
command.CommandType = CommandType.StoredProcedure;
// 添加存储过程参数
OracleParameter parameter1 = new OracleParameter("param1", OracleDbType.Varchar2);
parameter1.Direction = ParameterDirection.Input;
parameter1.Value = "value1";
command.Parameters.Add(parameter1);
OracleParameter parameter2 = new OracleParameter("param2", OracleDbType.Int32);
parameter2.Direction = ParameterDirection.Input;
parameter2.Value = 123;
command.Parameters.Add(parameter2);
OracleParameter parameter3 = new OracleParameter("param3", OracleDbType.RefCursor);
parameter3.Direction = ParameterDirection.Output;
command.Parameters.Add(parameter3);
// 执行存储过程并读取输出参数
command.ExecuteNonQuery();
OracleDataReader reader = ((OracleRefCursor)parameter3.Value).GetDataReader();
while (reader.Read())
{
Console.WriteLine(reader.GetString(0));
}
}
}
}
在示例代码中,我们首先创建了一个OracleConnection对象,并打开了连接。然后创建了一个OracleCommand对象,设置CommandType为StoredProcedure,即执行存储过程。接着添加了存储过程的输入参数和输出参数。最后执行存储过程,并读取输出参数的结果。
需要注意的是,在使用Oracle.DataAccess.Client命名空间之前,需要先安装Oracle Data Provider for .NET(ODP.NET)驱动程序。可以通过NuGet包管理器来安装ODP.NET驱动程序包。
原文地址: https://www.cveoy.top/t/topic/uvS 著作权归作者所有。请勿转载和采集!