Public Sub DSN_Create()
Dim Str As String
Str = "Database=econ" & _
vbCr & "Description=Экономика на MSSQL2005" & _
vbCr & "Server=serv" & _
vbCr & "Network=DBMSSOCN" & _
vbCr & "Trusted_Connection=yes"
DBEngine.RegisterDatabase "EconSql", "SQL Server", True, Str
End Sub
'Если DSN с таким именем есть, то его данные обновятся.
'Потом просто реконнектишь таблицы,для каждой таблицы делаешь:
Public Sub DSN_Refresh()
DoCmd.Hourglass True
Dim dbCurrent As DAO.Database
Dim tdfCurrent As DAO.TableDef
Dim r As DAO.Recordset
Call DSN_Create
Set dbCurrent = DBEngine.Workspaces(0).Databases(0)
For Each tdfCurrent In dbCurrent.TableDefs
If tdfCurrent.Connect <> "" Then
tdfCurrent.Connect = "ODBC;DSN=EconSql;Server=serv;Address=serv;DATABASE=econ"
tdfCurrent.RefreshLink
End If
Next
DoCmd.Hourglass False
End Sub