如果您要检索结果集请创建 DataSetDataTable 或 DataReader在本示例中我们只是获取第 步中创建的输出参数中的计数
使用 OracleCommand 对象的一个 Execute 方法打开连接并执行存储过程如下所示
方法 说明
ExecuteReader
通过执行能够返回结果集的存储过程生成 OracleDataReader
ExecuteNonQuery
执行不返回结果集的查询或过程返回受影响的行数
ExecuteOracleNonQuery
执行查询返回受影响的行数
该方法还使用 OracleString 参数来返回 UPDATEINSERT 或 DELETE 查询所修改的最后一行的行 ID
ExecuteScalar
执行一个查询或过程并且返回查询或过程的返回值或者将结果集第一行第一列的值作为 NET 框架数据类型返回
ExecuteOracleScalar
执行一个查询或过程并且返回查询或过程的返回值或者将结果集第一行第一列的值作为 OracleType 数据类型返回
使用完连接后不要忘记将其关闭
connOpen();
cmdExecuteNonQuery();
connClose();
如果您要使用 DataAdapter 来填充 DataTable 或 DataSet可以依靠 DataAdapter 来打开和关闭连接
处理结果在我们的示例中可在显示到控制台的输出参数中得到记录数
Console
WriteLine(cmd
Parameters[
reccount
]
Value);
下面是在本示例中开发的用于执行存储过程和检索结果的代码
OracleConnection conn = new OracleConnection(Data Source=oracledb;
User Id=UserID;Password=Password;);
OracleCommand cmd = new OracleCommand();
cmdConnection = conn;
cmdCommandText = COUNT_JOB_HISTORY;
cmdCommandType = CommandTypeStoredProcedure;
cmdParametersAdd(reccount OracleTypeNumber)Direction =
ParameterDirectionOutput;
connOpen();
cmdExecuteNonQuery();
connClose();
ConsoleWriteLine(cmdParameters[reccount]Value);
[] [] [] [] [] [] [] []