SQL已链接Table可插入无法删除运行-时间3086
SQL Linked Table Can Insert Can't Delete Run-Time 3086
我使用 Access VBA 在单个 SQL table 中添加和删除记录,其中包含 2 列 varchar
代码。我是 SQL 服务器数据库上的 dbowner
。我为这个 table 添加值的代码有效:
For Each varItm In Me.lstMyAllTypes.ItemsSelected
AddSQL = "INSERT INTO xyzMyTable ([MyCode1],[MyCode2]) " & _
"VALUES ('" & Me.lstMyAllTypes.Column(0, varItm) & "','" & Me.cboType.Column(1) & "');"
'EXECUTE SQL
CurrentDb.Execute AddSQL, dbSeeChanges
'Debug.Print AddSQL
Next varItm
我的删除代码抛出一个 运行 时间错误 3086:
For Each varItm In Me.MylstTypes.ItemsSelected
RemSQL = "DELETE FROM xyzMyTable " & _
"WHERE xyzMyTable.MyCode1 = '" & Me.MylstTypes.Column(0, varItm) & _
"' AND xyzMyTable.MyCode2 = '" & Me.cboType.Column(1) & "'"
'EXECUTE SQL
DoCmd.SetWarnings False
CurrentDb.Execute RemSQL, dbSeeChanges
DoCmd.SetWarnings True
Next varItm
我调试删除 SQL 字符串,我可以在 SSMS 中 运行 它,但不能在 Access 中。如果我在 Access 查询中创建相同的删除查询,则它不起作用。如果我打开 table 并尝试删除该行,它会发出叮当声,但没有弹出错误。怎么才能增不删?
此 table 在 SQL 服务器中与任何其他 table 没有任何关系,因此参照完整性不会成为问题。
要在链接的 ODBC table 中删除或更新,table 需要有一个 主键 。
Access 必须识别 PK:在设计视图中打开链接 table,检查 PK 列中是否有“锁”图标。
我使用 Access VBA 在单个 SQL table 中添加和删除记录,其中包含 2 列 varchar
代码。我是 SQL 服务器数据库上的 dbowner
。我为这个 table 添加值的代码有效:
For Each varItm In Me.lstMyAllTypes.ItemsSelected
AddSQL = "INSERT INTO xyzMyTable ([MyCode1],[MyCode2]) " & _
"VALUES ('" & Me.lstMyAllTypes.Column(0, varItm) & "','" & Me.cboType.Column(1) & "');"
'EXECUTE SQL
CurrentDb.Execute AddSQL, dbSeeChanges
'Debug.Print AddSQL
Next varItm
我的删除代码抛出一个 运行 时间错误 3086:
For Each varItm In Me.MylstTypes.ItemsSelected
RemSQL = "DELETE FROM xyzMyTable " & _
"WHERE xyzMyTable.MyCode1 = '" & Me.MylstTypes.Column(0, varItm) & _
"' AND xyzMyTable.MyCode2 = '" & Me.cboType.Column(1) & "'"
'EXECUTE SQL
DoCmd.SetWarnings False
CurrentDb.Execute RemSQL, dbSeeChanges
DoCmd.SetWarnings True
Next varItm
我调试删除 SQL 字符串,我可以在 SSMS 中 运行 它,但不能在 Access 中。如果我在 Access 查询中创建相同的删除查询,则它不起作用。如果我打开 table 并尝试删除该行,它会发出叮当声,但没有弹出错误。怎么才能增不删?
此 table 在 SQL 服务器中与任何其他 table 没有任何关系,因此参照完整性不会成为问题。
要在链接的 ODBC table 中删除或更新,table 需要有一个 主键 。
Access 必须识别 PK:在设计视图中打开链接 table,检查 PK 列中是否有“锁”图标。