Запрос на обновление, когда все поля являются необязательными

У меня есть таблица, которую мне нужно обновить, где все столбцы могут быть переданы методу.

Затем я использую 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#
5
задан RandyLahey 18 June 2012 в 17:21
поделиться