批量删除存储过程

CREATE OR REPLACE PROCEDURE BATCH_DELETE
(
  P_TABLENAME       IN    VARCHAR2,
  P_CONDITION       IN    VARCHAR2,
  P_RESULT    OUT NUMBER
)

AS

BEGIN

EXECUTE IMMEDIATE
          ‘DELETE FROM ‘ || P_TABLENAME || ‘ WHERE ‘ || P_CONDITION ;
       IF SQL%NOTFOUND THEN
          P_RESULT :=0;
          --EXIT;
       ELSE

P_RESULT :=SQL%ROWCOUNT;
       END IF;
       COMMIT;

DBMS_OUTPUT.PUT_LINE(‘FINISHED!‘);
    DBMS_OUTPUT.PUT_LINE(‘TOTALLY ‘||TO_CHAR(P_RESULT)||‘ RECORDS DELETED!‘);
END;

时间: 2024-10-01 06:14:12

批量删除存储过程的相关文章

批量删除Sql Server对象(表,存储过程,触发器)

先在系统表中找到要处理的表名或者是存储过程的名字,在用游标对其进行处理 PS:SqlServer 2000使用的是系统表是sysobjects,类型字段是:xtype; SqlServer 2005以上版本的系统表是Sys.Objects,类型字段是Type 本文中以Sql2005为例,Sql2000版本请自行按照上述说明进行替换 注意  sys.objects 中type的值不同 删除命令是不同的 如删除存储过程用drop PROCEDURE PROCEDURENAME 删除表用 drop t

存储过程批量删除

今天闲来无事,把批量删除由代码删除 改成存储过程删除 SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO ALTER procedure [dbo].[pr_deletepackage]--------套餐批量删除 ( @ids nvarchar(100) --参数 (1,2,3,) ) as declare @temp table(a varchar(100))--创建临时表 --------把参数@ids分割成int数组 判断是否满足删除条件 d

sqlserver中自定义函数+存储过程实现批量删除

由于项目的需要,很多模块都要实现批量删除的功能.为了方便模块的调用,把批量删除方法写成自定义函数.直接上代码. 自定义函数: ALTER FUNCTION [dbo].[func_SplitById] (@str varchar(50),@split varchar(10))--传过来的id字符串 --分割的标志 RETURNS @t Table (id int) --返回一个表 AS BEGIN DECLARE @x XML --进行拼接 SET @x = CONVERT(XML,'<item

Hibernate批量更新和批量删除批量添加 1(转)

通常,在一个Session对象的缓存中只存放数量有限的持久化对象,等到Session对象处理事务完毕,还要关闭Session对象,从而及时释放Session的缓存占用的内存.批量处理数据是指在一个事务中处理大量数据.以下程序在一个事务中批量更新CUSTOMERS表中年龄大于零的所有记录的AGE字段:Transaction tx = session.beginTransaction();Iterator customers=session.createQuery("from Customer c

LINQ To SQL在N层应用程序中的CUD操作、批量删除、批量更新

原文:LINQ To SQL在N层应用程序中的CUD操作.批量删除.批量更新 0. 说明 Linq to Sql,以下简称L2S.    以下文中所指的两层和三层结构,分别如下图所示: 准确的说,这里的分层并不是特别明确:(1) 生成的DataContext(Linq t0 SQL Runtime)和Entity是放在一个文件中的,物理上不能切割开来:上图只是展示逻辑上的结构.(2) 拿上图右边的三层结构来说,鉴于第(1)点,UI层就可以跨越BusinessLogic层,直接访问L2S层,这可能

批量删除 添加 表主键 sql-- 存储过程

sql 批量操作添加/ 删除 表主键 直接上代码把:  是存储过程哦 , GOSET ANSI_NULLS ONGOSET QUOTED_IDENTIFIER ONGOALTER proc [dbo].[prc_name] (@nameinfo nvarchar(50) output)AS declare @Key NVARCHAR(MAX) --创建参数 返回创建主键declare @tab NVARCHAR(MAX) --创建参数 返回 表declare @tabs NVARCHAR(MAX

mysq批量删除sleep进程

由于sleep进程比较多,就写个特简单的脚本,批量删除下,只保留5个即可 #!/bin/sh n=`/export/servers/mysql/bin/mysqladmin processlist -uroot -pxxxxx|grep -i sleep |wc -l` echo $n if [ "$n" -gt 10 ] then for i in `/export/servers/mysql/bin/mysqladmin processlist -uroot -pxxxxxx|gr

批量删除遇见的问题

做批量删除时遇见的问题: org.apache.ibatis.binding.BindingException: Parameter 'ids' not found. Available parameters are [array] 前台jsp页面的ajax请求可以进入: 但是点击批量删除的按钮时会报这个错误: 后来发现是Mapper中的collection定义错了: 把<foreach>标签中的collection="ids"改为collection="arra

oracle 存储过程详细介绍(创建,删除存储过程,参数传递等)

这篇文章主要介绍了oracle 创建,删除存储过程,参数传递,创建,删除存储函数,存储过程和函数的查看,包,系统包等相关资料,需要的朋友可以参考下 oracle 创建,删除存储过程,参数传递,创建,删除存储函数,存储过程和函数的查看,包,系统包 认识存储过程和函数 存储过程和函数也是一种PL/SQL块,是存入数据库的PL/SQL块.但存储过程和函数不同于已经介绍过的PL/SQL程序,我们通常把PL/SQL程序称为无名块,而存储过程和函数是以命名的方式存储于数据库中的.和PL/SQL程序相比,存储