动态创建SQL数据库

tbfy007 2007-12-20 10:43:28
小弟想在visual studio 2005中动态创建数据库并创建表,但是在创建前检查是否已存在该数据库,如果存在提示是删除还是不删除?

我想到用下面的SQL语句来完成,在SQL中可以执行,但在visual studio 2005中如何用代码完成呢?
CREATE DATABASE MyDataBase
drop database MyDataBase
...全文
66 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
tbfy007 2007-12-20
  • 打赏
  • 举报
回复
Private Sub 创建数据库_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles 创建数据库.Click
conn = New SqlConnection(ConnectionString)
If conn.State <> ConnectionState.Open Then
conn.Open()
End If
sql = "CREATE DATABASE MyDataBase ON PRIMARY (Name=MyDataBase_data, filename = " + "'H:\MyDataBase.mdf', size=3," + "maxsize=5, filegrowth=10%) log on" + "(name=MyDataBase_log, " + "filename='H:\MyDataBase.ldf',size=3," + "maxsize=20,filegrowth=1)"
cmd = New SqlCommand(sql, conn)
Try
cmd.ExecuteNonQuery()
Catch ae As SqlException
If MsgBox("数据库已经存在,是否删除?", MsgBoxStyle.OkCancel, "检查数据库是否存在") = MsgBoxResult.Ok Then
sql = "drop database MyDataBase"
cmd = New SqlCommand(sql, conn)
cmd.ExecuteNonQuery()
End If
End Try
End Sub

HZYBC大哥帮帮看是不这样?
我执行drop database MyDataBase,如果没有向创建的mydatabase中创建新表,执行上面的语句是可以删除刚创建的mydatabase数据库,但一旦向数据库中创建一个表,执行上面语句删除数据时就会出现“当前数据库正被另一个程序在使用”,我关闭窗体之后再开启运行,会提示“该数据库不存在,或你没有权力”





hzybc 2007-12-20
  • 打赏
  • 举报
回复
1、建立一个连接,SQLcn DB 是 MASTER
2、在SQLcn 上建立一个命令,Cmd
3、用命令 Cmd 来执行语句 "CREATE DATABASE MyDataBase "

16,553

社区成员

发帖
与我相关
我的任务
社区描述
VB技术相关讨论,主要为经典vb,即VB6.0
社区管理员
  • VB.NET
  • 水哥阿乐
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧