精华内容
下载资源
问答
  • 在工作中遇到使用Dbvs(DbVisualize) 创建数据库分区,并根据条件删除分区的问题,研究了很长时间才创建成功存储过程程序。创建分区好创建。不再详细描述,主要记录一下创建存储过程,以便以后参考。 创建分区 创建...

    在工作中遇到使用Dbvs(DbVisualize) 创建数据库分区,并根据条件删除分区的问题,研究了很长时间才创建成功存储过程程序。创建分区好创建。不再详细描述,主要记录一下创建存储过程,以便以后参考。

    创建分区

    创建删除分区的存储过程

    1.创建包(Package)

    找到Packages==》右键Create Package 然后设置包名 点击执行(Execute)

    "ABCD"就是创建的包,此时该包还不可使用,需要把右边控制台的代码删除掉,改成自己的程序代码,保存才算成功创建。

    自动创建的就如上图所示,需要把里面的代码删除掉,改成自己的代码(如下,我自己的代码,testKu是数据库名,ABCD 是包名)。

    CREATE OR REPLACE PACKAGE "testKu"."ABCD"
    as 
      procedure testData(tabName in varchar2,keepDate in date);
    end ABCD;

    2.创建包体(Package body)

    创建好了包之后就可以创建包体了,在刚才创建的包名上右键点击==》Create Package Body创建包体。注意包体的名字应该和包名一致,要不然会报错创建不成功。创建成功之后把下面的内容删除掉改成自己的存储过程函数内容。然后保存,点击执行图标就可以运行了。

    自动创建的包体如上,需要删除里面的代码改成自己的需要执行的程序代码。

     

    在开发过程中遇到PLS-00323:子程序或游标“ ”已在程序包说明中声明,必须在程序包体中对其进行定义的错误。

    原因是数据库库名不存在或者错误引起的,修改成已存在的库名就可以了。

    展开全文
  • --日志文件收缩至多少M DECLARE @DBLogSise AS INT ... --查询出数据库对应的日志文件名称 DECLARE @strDBName AS NVARCHAR(500) DECLARE @strLogName AS NVARCHAR(500) DECLARE @strSQL AS VAR...
     --日志文件收缩至多少M
        DECLARE @DBLogSise AS INT
        SET @DBLogSise=0
        --查询出数据库对应的日志文件名称
        DECLARE @strDBName AS NVARCHAR(500)
        DECLARE @strLogName AS NVARCHAR(500)
        DECLARE @strSQL AS VARCHAR(1000)
        
        SELECT 
            @strLogName=B.name,
            @strDBName=A.name
        FROM master.sys.databases AS A
        INNER JOIN sys.master_files AS B
        ON A.database_id = B.database_id
        WHERE A.database_id=DB_ID() 
            
        SET @strSQL='
        --设置数据库恢复模式为简单
        ALTER DATABASE ['+@strDBName+'] SET RECOVERY SIMPLE;
        --收缩日志文件
        DBCC SHRINKFILE ('''+@strLogName+''' , '+CONVERT(VARCHAR(20),@DBLogSise)+');
        --恢复数据库还原模式为完整
        ALTER DATABASE ['+@strDBName+'] SET RECOVERY FULL '
        exec(@strSQL)    


     1.在数据库中执行上面的存储过程名字为:usp_p_delDBLog

     2.然后再执行 EXEC dbo.usp_p_delDBLog @DBLogSise = 0 (收缩至多少M)

    转载于:https://www.cnblogs.com/xirilingfeng/p/5724103.html

    展开全文
  • mysql的存储过程 删除数据库所有表的存储过程
  • 用代码找回被误删的数据库的数据,很方便。直接用用存储过程找回数据库删除的数据
  • 删除数据库表中数据的存储过程 删除数据库表中数据的存储过程 删除数据库表中数据的存储过程
  • BEGINDECLARE strClear VARCHAR(256);DECLARE done INT DEFAULT 0;#定义游标DECLARE curOne CURSOR FOR select concat(‘truncate table ‘,table_name,‘;‘) from information_schema.TABLES where table_schema=...

    BEGIN

    DECLARE strClear VARCHAR(256);

    DECLARE done INT DEFAULT 0;

    #定义游标

    DECLARE curOne CURSOR FOR select concat(‘truncate table ‘,table_name,‘;‘) from information_schema.TABLES where table_schema=‘test‘;

    #绑定控制变量到游标,游标循环结束自动转为True

    DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = 1;

    #打开游标

    OPEN curOne;

    REPEAT

    FETCH curOne INTO strClear;

    #SELECT strClear;

    #动态执行SQL语句

    SET @mysql = strClear;

    PREPARE stmt from @mysql;

    EXECUTE stmt;

    DEALLOCATE PREPARE stmt;

    UNTIL done = 1 END REPEAT;

    #关闭游标

    CLOSE curOne;

    END

    展开全文
  • SQL Server存储过程存储过程(Procedure)是数据库重要对象之一,也是数据库学习的重点之一。本文,我们以SQL Server为例对存储过程的概念、定义、调用、删除存储过程调用异常等通过实例进行讲解与说明。存储过程...
    cc7c115518500b9ec08a16409967231c.png

    SQL Server存储过程

    存储过程(Procedure)是数据库重要对象之一,也是数据库学习的重点之一。本文,我们以SQL Server为例对存储过程的概念、定义、调用、删除及存储过程调用异常等通过实例进行讲解与说明。


    存储过程相关概念

    在数据表查询操作过程中,尤其数据关系较为复杂情况下,查询需要通过多表连接查询实现,所需编写的代码较为复杂。对于需要频繁使用的复杂查询语句,如果每次都需要开发者编写语句实现查询功能,其效率较为低下、时间成本较高、工作量也相对较高。复杂查询示例如下:

    2a0995345be3db29e2514c79c8f677d6.png

    复杂查询语句

    针对这些情况我们提出了存储过程的概念,通过存储过程将频繁使用的复杂查询功能封装到存储过程中。所谓封装即指存储过程的定义,一旦定义好之后就可以通过调用存储过程实现复杂查询语句的使用。存储过程的定义基本语法描述如下:

    b848f0bbaf7af5c5f5c728c33029d57e.png

    存储过程定义语法

    存储过程定义语发描述如上图所示,定义好存储过程之后可直接通过exec调用存储过程,即可返回查询结果。如果不需要使用该存储过程则可以使用Drop语句删除存储过程,调用即删除语法如下:

    9c79039d5495311167da20d216dbfd10.png

    存储过程调用与删除语法

    存储过程实例分析

    在明确存储过程基本概念之后,我们将进一步通过实例对存储过程的定义与使用进行说明。实例为《数据库教程-SQL Server查询结果列转行实现与分析》文中所提供的数据查询需求为基础,将其复杂查询语句使用存储过程进行封装。数据表描述如下:

    eca49423fcb1d6c7169e14272cf84aae.png

    数据表

    数据表如上所示,查询要求为按照项目编号sid统计裁判人数与裁判省份。并在此基础上实现按照项目编号对查询结果进行筛选。其统计结果如下样式显示:

    25cd72a7d50a1cea74622cc1bc5fe9df.png

    统计结果

    有之前基础,我们可以快速编写出实现该功能的查询语句,结合本章所讲的存储过程概念,我们可以编写符合要求的存储过程。存储过程编写代码如下所示:

    7220fdbbc135d02bf0ce7e46148161c0.png

    存储过程代码

    本例提供了带参数的存储过程,通过提供参数可直接获取制定编号的统计信息,实现测试代码及结果如下:

    ce7244391fbed4e7c6d82035fb83d48b.png

    存储过程调用及结果显示

    存储过程异常处理

    与程序设计语言类似,SQL Server也提供了完整的异常处理机制,因此我们可以直接在存储过程中使用try...catch语句实现异常的捕捉及异常信息的显示等。SQL Server中存储过程异常处理语法描述如下:

    c8c88310d9b490143828f987f6be7e24.png

    异常处理存储过程语法

    存储过程异常处理基本语法描述如上图所示,结合本例题,我们可以修改存储过程代码,实现对异常事件进行捕捉,并显示异常信息详情。修改代码描述如下图:

    468ee8854be844ecf2486e05d94ae0ff.png

    带异常处理的存储过程

    如上图我们对之前写的存储过程进行了进一步的修改,通过try catch语句可以捕捉存储过程在执行过程中所出现的异常问题。调用该存储过程代码方法及测试如下:

    cc96be72d947270af52bec5351846211.png

    调用存储过程


    本头条号长期关注编程资讯分享;编程课程、素材、代码分享及编程培训。如果您对以上方面有兴趣或代码错误、建议与意见,可以联系作者,共同探讨。期待大家关注!相关文章链接如下:

    数据库教程-SQL Server多条件模糊查询

    数据库教程-SQL Server查询结果列转行实现与分析

    数据库教程-SQL Server数据字典查询及导出

    展开全文
  • 引言文章首先介绍了存储过程的基本概念,然后详细描述了存储过程与 J2EE 和 Web Service 中各种技术的结合使用,这些技术包括 JDBC, IBM DB Bean, WebSphere Adapter for JDBC, DADX, EJB 等,对各种技术的实现方式...
  • SQL Server中,需要删除所有表或所有存储过程时,手动的方式只能逐个进行删除,耗个人时间,所以想弄个语句来实现这样的需求。 如果由于外键约束删除table失败,则先删除所有约束: --/第1步**********删除所有...
  • 从客户端应用程序对存储过程的单个调用可以多次访问服务器上的数据库。 典型的存储过程包含两个或多个SQL语句,以及以宿主语言或SQL过程语句进行的一些操纵或逻辑处理。您可以从其他应用程序或从命令行调用存储过程...
  • 创建表,触发器,和存储过程数据库对象,这里一定要用create 在hibernate.cfg.xml文件中 在Hibernate的映射文件中 同时还可以指定对什么数据库有效 News.hbm.xml 1 <?xml version='1.0' encoding...
  • 什么是存储过程SQL语句需要先编译然后执行,而存储过程(Stored Procedure)是一组为了完成特定功能的SQL语句集,经编译后存储在数据库中,用户通过指定存储过程的名字并给定参数(如果该存储过程带有参数)来调用执行它...
  • SQLserver 数据库危险存储过程删除与恢复方法,有时候是为了安全,也为了以后使用方便
  • SQLserver 数据库危险存储过程删除与恢复方法,有时候是为了安全,也为了以后使用方便今天为了实现SQLServer/" target="_blank">sqlserver的复制功能,因为以前删除了很多的sqlserver的一些会导致不安全因素的...
  • 概述虽然现在存储过程相对比较少用了,但是平时接触不可避免的要跟存储过程打交道,当需要自己写的时候总会碰到这或那的错误,这个时候一般要怎么调试呢?PL/SQL调试PL/SQL中提供了【调试存储过程】的功能,可以完成...
  • 在跑数据库脚本之前,往往会重新删除数据库中所有的序列.下面这种方式就提供一个存储过程,能做到删除所有的序列。在创建序列之前调用此存储过程即可。Set ECHO ONset define offSPOOL logs/create_procedure.log--...
  • 简单说说,如何使用Mysql的存储过程数据库里插入大量的数据!最近业务需要,插入数据,调用接口非常慢,因此想到了使用mysql来进行插入。 存储过程(Stored Procedure)...-- 若存在此存储过程 删除 drop procedure i
  • 1 --第一步,读取所有视图 2 select identity(int,1,1) flag,[name] names into #tmp 3 from sysobjects where crdate>'2012-07-09' 4 5 -- 执行上一步之后再... 6 --第二步循环删除 7 declare @t...
  • I have a function that looks like this:BEGINDROP DATABASE IF EXISTS db_1;END;I'm getting the following error:ERROR: DROP DATABASE cannot be executed from a function or multi-command string.Is it not p...
  • 组内真机共享,大家跑完性能测试,一般不去删除数据库,时间久了,存在很多早就不在有意义的数据库。一条条drop dababase 语句太麻烦。 写了个存储过程解决这个问题: 执行前请再三确认输入对参数,有些比如...
  • SQL Server 删除数据库所有表和所有存储过程 SQL Server中,需要删除所有表或所有存储过程时,手动的方式只能逐个进行删除,耗个人时间,所以想弄个语句来实现这样的需求。 步骤如下(两步): 如果由于外键约束...
  • 删除数据库所有存储过程的SQL语句

    千次阅读 2017-11-29 08:47:30
    下面为您介绍能够一次性删除数据库所有存储过程的SQL语句,供您参考,如果您对相关的SQL语句感兴趣,不妨一看,希望能够对您有所启迪。 --/第1步**********删除所有表的外键约束*************************/ ...
  • 这个存储过程需要配置在作业中,并开启xp_cmdshell,有调用实例。
  • --删除数据库中所有数据 USE Cynosure DECLARE tablecur CURSOR FOR SELECT [name] FROM sysobjects WHERE TYPE='U' DECLARE @tabname VARCHAR(100) OPEN tablecur FETCH NEXT FROM tablecur ...
  • 在我看来, 存储过程就是有业务逻辑和流程的集合, 可以在存储过程中创建表,更新数据, 删除等等。一个简单的存储过程:createprocedureporcedureName()beginselectnamefromuser;end;存储过程用create proced...
  • 需求:向trade这个数据库中的每一个表增加多个字段遇到问题:存储过程,游标,循环,动态sql执行注意:mysql 存储过程在我所使用的5.5版本中不能使用 show 的命令,利用information_schema 获得表的相关信息。...
  • --删除所有表的外键约束-- DECLARE c1 cursor for select 'alter table ['+ object_name(parent_obj) + '] dropconstraint ['+name+']; ' from sysobjects where xtype = 'F' open c1 declare @c1 varchar(8000) ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 5,507
精华内容 2,202
关键字:

存储过程删除数据库