大侠,用VB判断SQL数据库名称***是否存在,如果不存在就新建数据库的问题?大侠们看清楚啊,是数据库名称而不是数据表,我在网上查了很多资料就是解决不了,帮忙啊!大侠,本人没什么分,就20分,纯粹是帮忙吧!
------解决方案--------------------------------------------------------
'楼主参考这段:
Private Sub CreateSystemData()
On Error GoTo Err_Proc
G_CreateDataTrue = True
Pbr.Value = 30
'与master建立连接
With ac_Tmp
If .State = adStateOpen Then .Close
.ConnectionString = "driver=SQL Server;server=SQL实例名;uid=SA;pwd=;database=master"
.CommandTimeout = 0
.Open
End With
Pbr.Value = 50
'先判断数据库是否已经存在
StrSql = "select * from master..sysdatabases where [name] ='NBCRFreightClient'"
If ar_Tmp.State = adStateOpen Then ar_Tmp.Close
ar_Tmp.Open StrSql, ac_Tmp, adOpenKeyset, adLockReadOnly
If ar_Tmp.RecordCount > 0 Then
MsgBox "数据库已经存在,不能新建!", 48, "提示"
Picture1.Visible = False
Exit Sub
Else
Pbr.Value = 60
FilePath = App.path
If Right(RTrim(FilePath), 1) <> "\" Then
FilePath = RTrim(FilePath) & "\DataBase\Client"
Else
FilePath = RTrim(FilePath) & "DataBase\Client"
End If
Pbr.Value = 80
StrSql = " RESTORE DATABASE [NBCRFreightClient] FROM DISK = N'" & App.path & "\sql\NBCRFreightClient.bak' " _
& " WITH FILE = 1,NOUNLOAD,STATS = 10,RECOVERY,REPLACE,MOVE N'NBCRFreightClient_Data'" _
& " TO N'" & FilePath & "\NBCRFreightClient.MDF', MOVE N'NBCRFreightClient_Log'" _
& " TO N'" & FilePath & "\NBCRFreightClient.LDF'"
ac_Tmp.Execute StrSql
Pbr.Value = 90
End If
Pbr.Value = 100