0
SQL-DMO를 사용하여 VBS에서 스크립트를 실행하여 새 데이터베이스를 만들었습니다. 이것은 SQL Server 2000에서 수행되었지만 SQL Server 2008 R2에서는 더 이상 작동하지 않습니다.VBS (SQL DMO)를 사용하여 SQL Server 2008 R2 데이터베이스를 만들 때 오류가 발생했습니다.
스크립트는 다음과 같이이다 :
Const C_SQL_UID = "sa"
Const C_SQL_PWD = "sa"
Const C_SQL_SERVER = "dbserver"
Const C_SQL_TMPDBNAME = "TMP_DB"
Const C_SQLDIR = "d:\data"
Dim SqlServer: Set SqlServer = CreateObject("SQLDMO.SqlServer")
SqlServer.Connect C_SQL_SERVER, C_SQL_UID, C_SQL_PWD
Dim database: Set database = CreateObject("SQLDMO.Database")
Dim dbDataFile: Set dbDataFile = CreateObject("SQLDMO.DBFile")
Dim dbLogFile: Set dbLogFile = CreateObject("SQLDMO.LogFile")
database.Name = C_SQL_TMPDBNAME
dbDataFile.Name = C_SQL_TMPDBNAME
dbDataFile.PhysicalName = C_SQLDIR & "\" & C_SQL_TMPDBNAME & "_Data.mdf"
dbDataFile.PrimaryFile = True
dbDataFile.Size = 2
dbDataFile.FileGrowthType = 0 'SQLDMOGrowth_MB
dbDataFile.FileGrowth = 1
database.FileGroups.Item("PRIMARY").DBFiles.Add(dbDataFile)
dbLogFile.Name = C_SQL_TMPDBNAME & "Log"
dbLogFile.PhysicalName = C_SQLDIR & "\" & C_SQL_TMPDBNAME & "_Log.ldf"
dbLogFile.Size = 2
database.TransactionLog.LogFiles.Add(dbLogFile)
On Error Resume Next
SqlServer.Databases.Add(database)
If Err Then
wscript.echo Now & " Error creating DB (" & Err.Number & ") " & Err.Description
End If
On Error GoTo 0
는 마지막 명령 ("SqlServer.Databases.Add (데이터베이스)"), 내가 포함되지 않은 오류 번호 -2147219701 ...를 얻을를 실행 모든 설명. 나는 그것이 어디에서 유래 할 수 있는지 모른다. Microsoft가 DMO를 삭제 한 것을 알고 있지만 SMO가 VBScript를 지원하지 않기 때문에 다소 선택의 여지가 없습니다.
아이디어가 있으십니까?