数据库 删除-C#代码实现删除数据库

问题描述

C#代码实现删除数据库

C#代码方法1CreatDB-执行sql创建数据库,方法2CreatTable在该库中创建表,
方法3DeleteDB如果建表失败则删除数据库。但是删除数据库的时候提示数据库正在使用中无法删除。我要代码实现的方法,不要命令

解决方案

USE MASTER

GO

DECLARE @dbname SYSNAME

SET @dbname = 'databasename' --这个是要删除的数据库库名

DECLARE @s NVARCHAR(1000)

DECLARE tb CURSOR LOCAL
FOR
SELECT s = 'kill ' + CAST(spid AS VARCHAR)
FROM MASTER..sysprocesses
WHERE dbid = DB_ID(@dbname)

OPEN tb

FETCH NEXT FROM tb INTO @s

WHILE @@fetch_status = 0
BEGIN
EXEC (@s)
FETCH NEXT FROM tb INTO @s
END

CLOSE tb

DEALLOCATE tb

EXEC ('drop database [' + @dbname + ']')

这个方法我试过可以解决

解决方案二:

drop database 数据库名

解决方案三:

public void DropDatabase(string dbName)
{
    using (var conn = new SqlConnection("..."))
    {
        conn.Open();
        var cmd = new SqlCommand();
        cmd.CommandType=CommandType.Text;
        cmd.Connection = conn;
        cmd.CommandText = "USE [master]";
        cmd.ExecuteNonQuery();
        cmd.CommandText = String.Format("DROP DATABASE [{0}]",dbName);
        cmd.ExecuteNonQuery();
        conn.Close();
    }
}
时间: 2024-08-04 07:23:30

数据库 删除-C#代码实现删除数据库的相关文章

代码-oracle数据库写触发器解决级联删除问题

问题描述 oracle数据库写触发器解决级联删除问题 请问写一个触发器,怎么在根据id删除商品时,用触发器删除这个商品对应的购物车表项,订单明细表,以及这个订单明细表对应的订单表,删除这个订单表时还要删除这个订单表中对应的其他明细表,谢谢了,最好能有点代码,求教各位了 解决方案 创建数据库时为了防止其他人不小心删除操作错误, 所有的外键都没有加级联删除.哪知,不知什么时候自己入了一批错误的数据进去,入库使用的是软件自动的,一下点错给自己带来无尽麻烦啊,删除就不好办了. 表间的关系比较复杂,数据量

MySQL数据库的创建选择与删除命令详解

创建数据库: MySQL的任何事情都是以数据库开始的,数据库我们可以理解为"书架",表则可以理解为"书架上的书",而表中的数据则可以理解为"书中的内容".也就是说数据库是容器.当我们输入完用户名密码连接到MySQL后,可以使用CREATE DATABASE命令来创建一个新的MySQL数据库.例如:  代码如下 复制代码 create database xiaoxiaozi; /* Query OK, 1 row affected (0.06 se

sql批量删除数据与批量删除数据库表语句

游标删除方法  代码如下 复制代码 //定义游标 DECLARE tables_cursor CURSOR FOR SELECT name FROM sysobjects WHERE type = 'U' //选择用户表名 OPEN tables_cursor //打开游标连接   DECLARE @tablename sysname // 定义变量 FETCH NEXT FROM tables_cursor INTO @tablename //结果集中一行一行读取表名 WHILE (@@FET

orcale数据库表格被锁或删除了还提示存在

问题描述 orcale数据库表格被锁或删除了还提示存在 1,我想请问一下,orcale在什么情况下会锁表. 2,删除orcale直接在数据库里面手动删除表格是不是删除不干净,再次导入会有两种提示第一种:图层已经存在.第二种:locked requested conflicts with established locked两种错误提示.所以删除orcale里面的东西只能用sql语句删除么? 3,出现上述的情况该如何处理.(服务端已经重新启动过没用) 解决方案 参考一下这个,手动是删不干净的.ht

cheakbox-ASP.NET图片删除功能,不牵涉数据库,求大神!!

问题描述 ASP.NET图片删除功能,不牵涉数据库,求大神!! 用ASP.NET写了一个图片上传的功能,图片是存在项目的文件夹的,没有关联数据库,用DataList显示出来,我希望用复选框选中图片,批量删除这些图片? 解决方案 http://download.csdn.net/download/yaxin105/2720975 删除直接File.Delete就可以了.

access-delphi treeview动态增加、修改、删除节点,并加入数据库(ACCESS)

问题描述 delphi treeview动态增加.修改.删除节点,并加入数据库(ACCESS) delphi treeview动态增加.修改.删除节点,并加入数据库(ACCESS) 我是大菜鸟,请告知步骤,尤其是数据库控件和MDB文件怎么弄? 解决方案 http://www.tuicool.com/articles/QNjyee 解决方案二: ACESS的连接用ADO方式,TADOConnection设ConnectionString值为"路径+数据库名" 打开数据库连接:设置Conn

sybase 数据库 删除触发器 一次删除多条记录,触发器为什么只执行一次。

问题描述 sybase 数据库 删除触发器 一次删除多条记录,触发器为什么只执行一次. Table1 id,name 1,'AA' 2,'BB' 3,'BB' 4,'BB' Table2 rq, tlb_name , value '2015/02/25','Table1' , 'id=1' 触发器: create trigger TR_DEL_Table1 on Table1 for delete as declare @IDtmp int declare @ID varchar select

Mysql数据库中创建、删除用户并授权给数据库

MySql中添加用户,新建数据库,用户授权,删除用户,修改密码(注意每行后边都跟个;表示一个命令语句结束): 1.新建用户 登录MYSQL: @>mysql -u root -p @>密码 创建用户: mysql> insert into mysql.user(Host,User,Password) values("localhost","test",password("1234")); 这样就创建了一个名为:test 密码为:

删除实现不了,数据库已经连上了

问题描述 删除实现不了,数据库已经连上了 at com.wyk.ConnDB.executeUpdata(ConnDB.java:67) at org.apache.jsp.goods_005fdelete_jsp._jspService(goods_005fdelete_jsp.java:81) at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) at javax.servlet.http.HttpServ