update generateUpdateSQL
This commit is contained in:
@@ -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';"
|
"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
|
# Build SET clause
|
||||||
set_parts = String[]
|
set_parts = String[]
|
||||||
for (key, value) in data
|
for (key, value) in data
|
||||||
value_str = isa(value, AbstractString) ? "'$value'" : "$value"
|
if key ∉ [pk_column]
|
||||||
push!(set_parts, "$(string(key)) = $value_str")
|
value_str = isa(value, AbstractString) ? "'$value'" : "$value"
|
||||||
|
push!(set_parts, "$(string(key)) = $value_str")
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
set_clause = join(set_parts, ", ")
|
set_clause = join(set_parts, ", ")
|
||||||
|
|||||||
Reference in New Issue
Block a user