WEB开发网
开发学院数据库Oracle 使用ADO.NET访问Oracle 9i存储过程(上) 阅读

使用ADO.NET访问Oracle 9i存储过程(上)

 2007-05-13 12:30:07 来源:WEB开发网   
核心提示: 以下 Oracle 存储过程删除了由单个输入参数指定的员工的所有工作经历,并且不返回任何数据,使用ADO.NET访问Oracle 9i存储过程(上)(5),CREATE OR new PROCEDURE DELETE_JOB_HISTORY( p_employee_id NUMBER)IS

以下 Oracle 存储过程删除了由单个输入参数指定的员工的所有工作经历,并且不返回任何数据。

CREATE OR new PROCEDURE DELETE_JOB_HISTORY
(
   p_employee_id NUMBER
)
IS
BEGIN
   DELETE FROM job_history
   WHERE employee_id = p_employee_id;
END DELETE_JOB_HISTORY;

以下代码运行了该存储过程。

// create the connection
OracleConnection conn = new OracleConnection("Data Source=oracledb;
   User Id=UserID;Password=Password;");
  // create the command for the stored procedure
OracleCommand cmd = new OracleCommand();
cmd.Connection = conn;
cmd.CommandText = "COUNT_JOB_HISTORY";
cmd.CommandType = CommandType.StoredProcedure;
  // add the parameter specifying the employee for whom to delete records
cmd.Parameters.Add("p_employee_id", OracleType.Number).Value = 102;
  OracleString rowId;
// execute the stored procedure
conn.Open();
int rowsAffected = cmd.ExecuteNonQuery();
conn.Close();
  Console.WriteLine("Rows affected: " + rowsAffected);

如果您尚未修改默认的 HR 安装,则 JOB_HISTORY 表中员工 102 的记录被删除,并且向控制台输出以下内容:

Rows affected: 1

访问返回值

RETURN 语句立即将控制从存储过程返回到调用程序。Oracle 存储过程中的 RETURN 语句无法像在 T-SQL 中那样返回值。

上一页  1 2 3 4 5 6 7 8  下一页

Tags:使用 ADO NET

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接