1
嘿。 我有一個獨立的PC上的主要訪問數據庫在網絡上,我有一個訪問數據庫與網絡上的鏈接錶鏈接到獨立的個人電腦。我通過創建一個網絡共享到獨立PC並通過路徑鏈接它們來鏈接這些表。我可以設置它,以便在打開數據庫時自動更新鏈接表。 本訪問中刷新鏈接表
嘿。 我有一個獨立的PC上的主要訪問數據庫在網絡上,我有一個訪問數據庫與網絡上的鏈接錶鏈接到獨立的個人電腦。我通過創建一個網絡共享到獨立PC並通過路徑鏈接它們來鏈接這些表。我可以設置它,以便在打開數據庫時自動更新鏈接表。 本訪問中刷新鏈接表
您可以。我經常發現使用一個在啓動時運行的小檢查表單(通過啓動選項設置)並檢查各種事物(包括鏈接表)會很方便。爲此,我還在本地機器上保存了一個鏈接表的表格,儘管通過遍歷TableDefs集合可以獲得鏈接表的列表,我認爲保留列表會稍微安全一些。
檢查表單可以檢查所有鏈接,如果鏈接中斷或丟失,可以要求用戶提供新位置或使用固定位置。如果沒有發現問題,表單可以自行關閉並打開菜單或其他表單。
在鏈接到一個鏈接表的情況下,就可以獲取連接從使用方法:
CurrentDB.TableDefs("TableName").Connection
下面是一些注意事項:
Sub RelinkTables(Optional strConnect As String = "")
Dim db As DAO.Database
Dim rs As DAO.Recordset
Dim strSQL
Dim tdf As DAO.TableDef
On Error GoTo TrapError
Set db = CurrentDb
If strConnect = "" Then
''Where Me.txtNewDataDirectory is a control on the check form
strConnect = "MS Access;PWD=databasepassword;DATABASE=" & Me.txtNewDataDirectory
End If
''Table of tables to be linked with two fields TableName, TableType
Set rs = CurrentDb.OpenRecordset("Select TableName From sysTables " _
& "WHERE TableType = 'LINK'")
Do While Not RS.EOF
''Check if the table is missing
If IsNull(DLookup("[Name]", "MSysObjects", "[Name]='" & rs!TableName & "'")) Then
Set tdf = db.CreateTableDef(RS!TableName, dbAttachSavePWD, _
rs!TableName, strConnect)
''If the table is missing, append it
db.TableDefs.Append tdf
Else
''If it exists, update the connection
db.TableDefs(rs!TableName).Connect = strConnect
End If
db.TableDefs(rs!TableName).RefreshLink
RS.MoveNext
Loop
Set db = Nothing
RS.Close
Set RS = Nothing
Exit_Sub:
Exit Sub
TrapError:
HandleErr Err.Number, Err.Description, "Relink Tables"
End Sub
你可以修改你的使用無模棱兩可條款?你的前端在哪裏,你的後端在哪裏。無論如何,如果你有鏈接表,它們會在你更新時更新。有什麼意義? – 2010-11-22 08:02:51
你有沒有Google更新訪問鏈接表?如果不是,爲什麼不呢?這是存在的最常見的訪問問題之一,已經以千萬種不同的方式回答了數百萬次。 – 2010-11-24 04:27:33