我的更新语句有问题 -- 获取错误 3144 [英] Problem with my update statement --getting error 3144

查看:45
本文介绍了我的更新语句有问题 -- 获取错误 3144的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

当我运行此代码但不确定我做错了什么时,我在更新语句中收到运行时错误 3144 语法错误.我有一个列表,我想写入数据库中的另一个表(我的主表).代码如下:

I am getting Runtime error 3144 Syntax error in update statement when I am running this code and not sure what I am doing wrong. I have a list that I am wanting to write to another table (my main table) in my database. Below is the code:

Set lst = Me.lstTermEmpl

For Each item In lst.ItemsSelected
    CurrentDb.Execute "UPDATE tbl_Staffing SET Term_Heat_Ticket_Num = me.TxtTerm_Heat_Ticket_Num, Inactive_Status_Dt =lst.column(7), Termination_Reason_FK =lst.column(9), WHERE ID = " & _
        lst.Column(8) & ";", dbFailOnError

它正在重新调整 me.TxtTerm_Heat_Ticket_num 和 Inactive_Status_dt 的值,而不是 Termination_Reason_FK 或 ID.

It is retruning values for the me.TxtTerm_Heat_Ticket_num and the Inactive_Status_dt but Not the Termination_Reason_FK or the ID.

我可能在代码中遗漏了什么吗?

Am I missing something in the code maybe?

这是我对列表的查询:

SELECT Tbl_Term_Employees.Term_ID, Tbl_Term_Employees.Date_of_TermEmplRequest,
Tbl_Term_Employees.NatGen_ID, Tbl_Term_Employees.FirstName, 
Tbl_Term_Employees.LastName, IIf([Term_Approval_Status]=0,"Pending SVM Approval","SVM Approved") AS TermApprovalStatus, 
Tbl_Termination_Reasons.Termination_Reason, 
Tbl_Term_Employees.Inactive_Status_Dt, Tbl_Term_Employees.ID_FK, 
Tbl_Term_Employees.Termination_Reason_FK, Tbl_Term_Employees.Team_Fk, 
Tbl_Term_Employees.Site_FK
FROM ((Tbl_Term_Employees INNER JOIN Tbl_Termination_Reasons ON Tbl_Term_Employees.Termination_Reason_FK = Tbl_Termination_Reasons.Termination_Reason_ID) INNER JOIN Tbl_Teams ON Tbl_Term_Employees.Team_Fk = Tbl_Teams.Team_ID) INNER JOIN Tbl_Site ON Tbl_Term_Employees.Site_FK = Tbl_Site.Site_ID
WHERE (((Tbl_Term_Employees.Team_Fk)=[forms]![FrmTermEmplList].[cboTeam]) AND ((Tbl_Term_Employees.Site_FK)=[forms]![FrmTermEmplList].[cboSite]) AND ((Tbl_Term_Employees.Term_Approval_Status)=[forms]![FrmTermEmplList].[txtTerm_Approval_Status]));

--我在设计视图中查询的图片

--Picture of my query in design view

推荐答案

连接变量输入.对表单控件的引用是一个变量.
分号;"不需要.
删除 WHERE 前面的逗号.

Concatenate variable input. Reference to form control is a variable.
Semi-colon ";" is not needed.
Remove comma in front of WHERE.

日期/时间类型字段的参数需要#个分隔符,文本字段参数需要撇号.

Parameter for date/time type field needs # delimiters, text field parameter needs apostrophes.

    CurrentDb.Execute "UPDATE tbl_Staffing SET Term_Heat_Ticket_Num = '" & _
        Me.TxtTerm_Heat_Ticket_Num & "', Inactive_Status_Dt = #" & lst.column(7, item) & _
        "#, Termination_Reason_FK = " & lst.column(9, item) & " WHERE ID = " & lst.Column(8, item), dbFailOnError

这篇关于我的更新语句有问题 -- 获取错误 3144的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆