我有一個使用Access 2007創建的應用程序,它與DSN完美協作,我更新應用程序以使用無DSN連接到SQL-Server,我沒有' T改變應用程序中的任何代碼,但是當我運行該應用程序我得到這個錯誤運行時錯誤'3326'此記錄集不可更新
運行時錯誤「3326」此記錄是不可更新
Sub DnsLessLinkTable()
Dim td As TableDef
Dim stConnect As String
Dim strTablesName(0 To 7) As String
strTablesName(0) = "dbo_Directorate"
strTablesName(1) = "dbo_Nationality"
strTablesName(2) = "dbo_personal"
strTablesName(3) = "dbo_Qualification"
strTablesName(4) = "dbo_Qualimain"
strTablesName(5) = "dbo_Qualisec"
strTablesName(6) = "dbo_Section"
strTablesName(7) = "dbo_Trips"
For Each td In CurrentDb.TableDefs
For Each TableName In strTablesName
If td.Name = TableName Then
CurrentDb.TableDefs.Delete TableName
End If
Next
Next
stConnect = "ODBC;Driver={SQL Server};Server=ServerNametest;Database=DBName;Uid=user;Pwd=password;"
For Each TableName In strTablesName
Dim splitTarget As Variant
splitTarget = Split(TableName, "_")
Set td = CurrentDb.CreateTableDef(TableName, dbAttachSavePWD, splitTarget(1), stConnect)
CurrentDb.TableDefs.Append td
AttachDSNLessTable = True
Next
Err.Description
End Sub
唯一表那個dosnt的主鍵是SQL服務中的[Personal]呃,我又把它連接到[dbo_personal]
的DSN的模塊已成功運行並更新所有的鏈接表,我真的使用這個應用程序掙扎, 注意,DSN-less連接之前,我用的是相同的打造的DSN
任何建議,這將有助於
你能分享你用來更新記錄集的代碼嗎? – izzymo 2015-03-25 12:30:01
記錄集是單個表還是查詢? – 2015-03-25 13:31:12