怎样删除一个数据库中的所有对象????我用的是虚拟主机,
提供商给我分配了一个数据库,我没有删除这个数据库的权限。
由于我对数据库的设计做了大的改动,
所以,
我想把数据库中原先建的所有对象,包括表、视图、存储过程等等,(数据也不要了)全部删除重新再建。怎么做啊??
有没有这样的sql语句或系统存储过程?
没有,我该怎么做???

解决方案 »

  1.   

    如果有改数据库名称,就可以先把名称改了(sp_renamedb),
    在重新建立一个与原来库同名的即可. 如果没有
    可以用分离库后重新建立,或停用sqlserver后把
    数据库文件换了....
      

  2.   

    俺用的是虚拟主机,人家给俺的账号只是一般数据库用户的权限,
    没有删除数据库,或停用sql server的权限。
      

  3.   

    类似于这样子?declare @tablename varchar(200)
    declare @xtype varchar(10)
    declare table_name cursor for
    select name,xtype from sysobjects where xtype in ('U','P')
    open table_name
    fetch next from table_name into @tablename,@xtype
    while @@fetch_status = 0
    begin
    if (@xtype = 'U')
    exec('drop table '+@tablename)
    else
    exec('DROP PROCEDURE '+@tablename)
    fetch next from table_name into @tablename,@xtype
    end
    close table_name
    deallocate table_name
      

  4.   

    楼上的方法不行啊,有FOREIGN KEY 约束引用的表不能被删除。!俺用的是sql 2005
      

  5.   

    删除数据库对象时是有先后顺序的,请楼主参考:
    http://blog.csdn.net/wanyingsong/archive/2004/08/25/84147.aspx
      

  6.   

    manger studion连接到你的数据库--右键数据库--任务--生成脚本--为整个库生成脚本--编写脚本行为选择"仅编写drop脚本"其他根据需要设置, 这样就会生成drop脚本了, 执行这个脚本就可以删除数据库的所有对象了.
      

  7.   

    zjcxc(邹建)
    老大,就是老大!说的总是那么有道理!!!