Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sockets/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
错误3622打开具有标识列的SQL Server表_Sql_Sql Server_Vba_Ms Access - Fatal编程技术网

错误3622打开具有标识列的SQL Server表

错误3622打开具有标识列的SQL Server表,sql,sql-server,vba,ms-access,Sql,Sql Server,Vba,Ms Access,我做错了什么?我需要将表dbo_customer中的一条记录复制(然后将其删除)到表dbo_active_任务中。但我得到一个错误“error 3622-在访问具有标识列的SQL Server表时,必须将dbSeeChanges选项与OpenRecordset一起使用。” 这是一个笛卡尔产品,您可以为客户过滤,而不是为任务过滤 因此,您将获得与dbo\u active\u task中的记录一样多的记录 如果需要此源表,则需要附加WHERE子句以筛选单个任务。请删除实际未使用的数据库标记。这是否有

我做错了什么?我需要将表dbo_customer中的一条记录复制(然后将其删除)到表dbo_active_任务中。但我得到一个错误“error 3622-在访问具有标识列的SQL Server表时,必须将dbSeeChanges选项与OpenRecordset一起使用。”

这是一个笛卡尔产品,您可以为客户过滤,而不是为任务过滤

因此,您将获得与
dbo\u active\u task
中的记录一样多的记录


如果需要此源表,则需要附加WHERE子句以筛选单个任务。

请删除实际未使用的数据库标记。这是否有帮助@Nayak我添加了这个代码
CurrentDb.Execute stSQlIns,dbSeeChanges
CurrentDb.Execute stSqlD,dbSeeChanges
,而不是这个
CurrentDb.Execute(stSQlIns)
CurrentDb.Execute(stSqlD)
,现在它复制了很多次记录(我只需要一次),但是不要从表中删除它。那么删除你的删除SQL…@Nathan_Sav那么如何删除当前记录呢?
Dim stSQlIns As String
Dim stSqlD As String
Dim rs As DAO.Recordset

If MsgBox("Copy № " & Me![id].Value, vbYesNo + vbDefaultButton2, "Moving to the archive ") = vbYes Then

stSQlIns = "INSERT INTO [dbo_new] " _
& "SELECT [dbo_customer].[id], [dbo_customer].[apartment], [dbo_customer].[description], [dbo_customer].[documents], [dbo_customer].[email], [dbo_customer].[first_name], [dbo_customer].[house_number], [dbo_customer].[last_name], [dbo_customer].[middle_name], [dbo_customer].[passport_number_str], [dbo_customer].[passport_number], [dbo_customer].[passport_series], [dbo_customer].[tel_number], [dbo_customer].[street_id], [dbo_active_task].[check_number], [dbo_active_task].[enable], [dbo_active_task].[production_datetime], [dbo_active_task].[production_method], [dbo_active_task].[shedule_datetime], [dbo_active_task].[shedule_end_datetime], [dbo_active_task].[task_desc], [dbo_active_task].[vip], [dbo_active_task].[customer_id], [dbo_active_task].[schedule_person_id], [dbo_active_task].[task_id]" _
& "FROM [dbo_customer], [dbo_active_task] " _
& "WHERE ((([dbo_customer].[id])=" & Me![id].Value & ")) "

stSqlD = "DELETE [dbo_customer].*, [dbo_active_task].* " _
& "FROM [dbo_customer], [dbo_active_task] " _
& "WHERE ((([dbo_customer].[id])=" & Me![id].Value & "))"
Set rs = Me.Recordset
CurrentDb.Execute (stSQlIns)
CurrentDb.Execute (stSqlD)
Me![id].Requery

End If
& "FROM [dbo_customer], [dbo_active_task] " _
& "WHERE ((([dbo_customer].[id])=" & Me![id].Value & ")) "