gpt4 book ai didi

sql - 当所有字段都是可选的时更新查询

转载 作者:行者123 更新时间:2023-12-04 18:47:56 26 4
gpt4 key购买 nike

我有一个需要更新的表,其中所有列都可以选择传递给方法。

然后我使用 ColdFusion 来检查是否通过了每一列并将其添加到更新查询中。

做这个的最好方式是什么?我不能总是更新 user_id 字段,因为它是一个身份字段。有没有类似于设置 1 = 1 的东西,就像我在下面那样可以工作?问题只是逗号导致语法错误。

谢谢你的帮助。

update users
set 1 = 1
<cfif len(arguments.userType)>,user_type = #arguments.userType#</cfif>
<cfif len(arguments.primaryGroupId)>,primary_group_id = #arguments.primaryGroupId#</cfif>
<cfif len(arguments.email)>,email = '#arguments.email#'</cfif>
<cfif len(arguments.password)>,password = '#arguments.password#'</cfif>
<cfif len(arguments.firstName)>,first_name = '#arguments.firstName#'</cfif>
<cfif len(arguments.lastName)>,last_name = '#arguments.lastName#'</cfif>
<cfif len(arguments.status)>,status = '#arguments.status#'</cfif>
<cfif len(arguments.languageId)>,language_id = #arguments.languageId#</cfif>
<cfif len(arguments.gmtOffset)>,gmt_offset = '#arguments.gmtOffset#'</cfif>
where user_id = #arguments.userId#

最佳答案

如果您正在更新,并且未传递参数,则只需将其设置为当前值。

update users
set
user_type = <cfif len(arguments.user_type)>#arguments.userType#<cfelse>user_type</cfif>
,primary_group_id = <cfif len(arguments.primaryGroupId)>#arguments.primaryGroupId#<cfelse>primary_group_id</cfif>
,email = <cfif len(arguments.email)>'#arguments.email#'<cfelse>email</cfif>
where user_id = #arguments.userId#

关于sql - 当所有字段都是可选的时更新查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11087857/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com