数据库

位置:IT落伍者 >> 数据库 >> 浏览文章

ADO.NET访问Oracle 9i存储过程(上)[3]


发布日期:2021年07月06日
 
ADO.NET访问Oracle 9i存储过程(上)[3]

如果您要检索结果集请创建 DataSetDataTable 或 DataReader在本示例中我们只是获取第 步中创建的输出参数中的计数

使用 OracleCommand 对象的一个 Execute 方法打开连接并执行存储过程如下所示

方法 说明

ExecuteReader

通过执行能够返回结果集的存储过程生成 OracleDataReader

ExecuteNonQuery

执行不返回结果集的查询或过程返回受影响的行数

ExecuteOracleNonQuery

执行查询返回受影响的行数

该方法还使用 OracleString 参数来返回 UPDATEINSERT 或 DELETE 查询所修改的最后一行的行 ID

ExecuteScalar

执行一个查询或过程并且返回查询或过程的返回值或者将结果集第一行第一列的值作为 NET 框架数据类型返回

ExecuteOracleScalar

执行一个查询或过程并且返回查询或过程的返回值或者将结果集第一行第一列的值作为 OracleType 数据类型返回

使用完连接后不要忘记将其关闭

connOpen();

cmdExecuteNonQuery();

connClose();

如果您要使用 DataAdapter 来填充 DataTable 或 DataSet可以依靠 DataAdapter 来打开和关闭连接

处理结果在我们的示例中可在显示到控制台的输出参数中得到记录数

ConsoleWriteLine(cmdParameters[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);

[] [] [] [] [] [] [] []

               

上一篇:ADO.NET访问Oracle 9i存储过程(上)[2]

下一篇:让sqlCommand和SqlDataAdapter合作