Ошибки нет, но и не выполняется. Нужно убивать соединения в SQL.
Const adOpenStatic = 3
Const adLockOptimistic = 3
Const adUseClient= 3
const NameDB = "BAZA"
'Убиваем все активные сеансы подключенные к базе NameDB
strQryKill = "DECLARE
spid VARCHAR(200) " &VbCrLF&_
"DECLARE @kill_spid VARCHAR(200) " &VbCrLF&_
"DECLARE kill_session CURSOR FOR " &VbCrLF&_
"SELECT spid FROM [master].dbo.sysprocesses " &VbCrLF&_
"WHERE dbid=db_id('"&NameDB&"') " &VbCrLF&_
"OPEN kill_session; " &VbCrLF&_
"FETCH NEXT FROM kill_session INTO
spid " &VbCrLF&_
"WHILE @@FETCH_STATUS = 0 " &VbCrLF&_
"BEGIN " &VbCrLF&_
" SET @kill_spid='KILL ' +
spid + char(10) " &VbCrLF&_
" EXEC (@kill_spid) " &VbCrLF&_
" FETCH NEXT FROM kill_session " &VbCrLF&_
" INTO
spid; " &VbCrLF&_
"END; " &VbCrLF&_
"DEALLOCATE kill_session;"
Set con = CreateObject("ADODB.Connection")
con.ConnectionString = "Provider=SQLOLEDB;Data Source=server;Password=1;User ID=user1c;Initial Catalog=MASTER;"
'With con
'.CursorType = adOpenStatic
'.LockType = adLockOptimistic
'.CursorLocation = adUseClient
'End With
con.Open
con.execute(strQryKill)
con.Close