zoukankan      html  css  js  c++  java
  • 一次性删除数据库所有表和所有存储过程 SQL语句

    一次性删除数据库所有表和所有存储过程 SQL语句

    今天转移数据库数据,需要把数据库原来的表和存储过程清空。
    删除所有的表:
    如果由于外键约束删除table失败,则先删除所有约束:

    --/第1步**********删除所有表的外键约束*************************/
    
    DECLARE c1 cursor for 
    select 'alter table ['+ object_name(parent_obj) + '] drop constraint ['+name+']; '
    from sysobjects 
    where xtype = 'F'
    open c1
    declare @c1 varchar(8000)
    fetch next from c1 into @c1
    while(@@fetch_status=0)
    begin 
    exec(@c1)
    fetch next from c1 into @c1
    end
    close c1
    deallocate c1
    
    --/第2步**********删除所有表*************************/
    
    use 数据库
    declare @tname varchar(8000)
    set @tname=''
    select @tname=@tname + Name + ',' from sysobjects where xtype='U'
    select @tname='drop table ' + left(@tname,len(@tname)-1)
    exec(@tname)
    
    
    ----清空存储过程
    use [数据库名称]
    declare @tname varchar(8000)
    set @tname=''
    select @tname=@tname + Name + ',' from sysobjects where xtype='P'
    select @tname='drop PROCEDURE ' + left(@tname,len(@tname)-1)
    exec(@tname)

    转自:http://www.cnblogs.com/a-zx/articles/2405121.html

  • 相关阅读:
    SecureCRT 迁移到新环境,配置导出
    Git 常用操作
    Java 性能分析工具 Asyncprofiler
    冒号语法
    后台乱码转中文
    js讲解视频
    下载指定版本的loader.调整文件夹结构
    react大型数据渲染列表
    git拉取报错
    记录一个排序表格的插件
  • 原文地址:https://www.cnblogs.com/12jh23/p/7241279.html
Copyright © 2011-2022 走看看