From b8bd06f3861611aad546ee97f329aa4986d092d5 Mon Sep 17 00:00:00 2001 From: narawat Date: Fri, 29 May 2026 11:16:34 +0700 Subject: [PATCH] update generateUpdateSQL --- src/dbUtil.jl | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/src/dbUtil.jl b/src/dbUtil.jl index 1925ac8..ba23453 100644 --- a/src/dbUtil.jl +++ b/src/dbUtil.jl @@ -166,12 +166,15 @@ julia> generateUpdateSQL(table_name, pk_column, pk_value, data) "UPDATE wine SET acidity = 'full', tannin = 'medium', country = 'Italy' WHERE wine_id = '8f3c7a2e-1b4d-4a9f-9c2e-4a8b3d6e5f7a';" ``` """ -function generateUpdateSQL(table_name::String, pk_column::Symbol, pk_value, data::Dict{Symbol, Any}) +function generateUpdateSQL(table_name::String, pk_column::String, pk_value, + data::AbstractDict{String, Any}) # Build SET clause set_parts = String[] for (key, value) in data - value_str = isa(value, AbstractString) ? "'$value'" : "$value" - push!(set_parts, "$(string(key)) = $value_str") + if key ∉ [pk_column] + value_str = isa(value, AbstractString) ? "'$value'" : "$value" + push!(set_parts, "$(string(key)) = $value_str") + end end set_clause = join(set_parts, ", ")