C# 要在程序中执行的Oracle pl块

C# 要在程序中执行的Oracle pl块,c#,oracle,C#,Oracle,我是C#的新手。我想知道如何在C#中执行Oracle pl sql语句块 我正在字符串生成器中编写一个pl sql查询,并希望获取相同的返回值 StringBuilder sb = new StringBuilder(); sb.Append(" declare "); sp.Append(" v_acid varchar(10);"); sp.Append(" v_Cid varchar(10);"); sp.Append(" begin "); sp.Append(" selec

我是C#的新手。我想知道如何在C#中执行Oracle pl sql语句块

我正在字符串生成器中编写一个pl sql查询,并希望获取相同的返回值

StringBuilder sb =  new StringBuilder();
sb.Append(" declare ");
sp.Append(" v_acid   varchar(10);");
sp.Append(" v_Cid    varchar(10);");
sp.Append(" begin ");
sp.Append(" select acid,cust into v_acid,v_Cid from account where       account='112111' ");
sp.Append(" end ");
我希望在字符串变量中设置
v_acid
v_Cid
的返回值。请帮忙


提前谢谢

首先,您必须下载
OracleClientProvider
,并将其添加到项目的引用中。这将使您能够使用
c
Oracle
数据库通信

然后,您需要的一般配置如下所示:

using(var connection new OracleConnection(connectionString))
{
    OracleCommand cmd = new OracleCommand();
    cmd.CommandText = " SELECT acid, cust "+
                      " FROM account "+
                      " WHERE account='112111' ";

    connection.Open();
    var reader = command.ExecuteReader();
    reader.Read(); 

    OracleNumber acid = reader.GetOracleNumber(0);
    OracleNumber cust = reader.GetOracleNumber(1);
}

谢谢你的回复。实际上,我提到了一小段代码。实际的查询似乎是一个过程,在这个过程中,我将从差异表中获取值,并将其添加到声明的变量中,然后对该变量进行一些计算并生成一个报告。因此,我想知道如何执行pl sql块。