11 Commits

Author SHA1 Message Date
ton
abdf6cf3b8 Merge pull request 'update' (#6) from add_generateupdateSQL into main
Reviewed-on: #6
2026-06-07 09:32:41 +00:00
f2ba243df0 update 2026-06-07 16:27:08 +07:00
ton
bb2851332a Merge pull request 'update' (#5) from add_generateupdateSQL into main
Reviewed-on: #5
2026-06-07 09:20:55 +00:00
00225f3a06 update 2026-06-07 16:16:52 +07:00
ton
7cb0bd077f Merge pull request 'update' (#4) from add_generateupdateSQL into main
Reviewed-on: #4
2026-06-07 09:04:33 +00:00
0ba2aa310e update 2026-06-07 15:32:49 +07:00
ton
1916668c6e Merge pull request 'add_generateupdateSQL' (#3) from add_generateupdateSQL into main
Reviewed-on: #3
2026-06-07 06:57:28 +00:00
919800da42 add generateUpdateSQL 2026-06-07 13:56:07 +07:00
947580a2ec update 2026-06-07 13:46:04 +07:00
688b9a22b6 add generateUpdateSQL 2026-06-07 13:43:47 +07:00
ton
76ce0fc54f Merge pull request 'usability' (#2) from usability into main
Reviewed-on: #2
2026-05-29 04:17:51 +00:00

View File

@@ -121,7 +121,26 @@ function generateInsertSQL(table_name::String, columnToInsert::Vector{Symbol}, d
for (key, value) in data for (key, value) in data
if key columnToInsert if key columnToInsert
push!(columns, string(key)) push!(columns, string(key))
push!(values, "'$value'") #[] number should not wrapped in '' value_str = isa(value, AbstractString) ? "'$value'" : "$value"
push!(values, value_str)
end
end
columns_str = join(columns, ", ")
values_str = join(values, ", ")
return "INSERT INTO $table_name ($columns_str) VALUES ($values_str);"
end
function generateInsertSQL(table_name::String, data::AbstractDict{String, Any})
columns = String[]
values = String[]
for (key, value) in data
if key keys(data)
push!(columns, string(key))
value_str = isa(value, AbstractString) ? "'$value'" : "$value"
push!(values, value_str)
end end
end end
@@ -185,5 +204,30 @@ function generateUpdateSQL(table_name::String, pk_column::String, pk_value,
return "UPDATE $table_name SET $set_clause WHERE $pk_column = $pk_val_str;" return "UPDATE $table_name SET $set_clause WHERE $pk_column = $pk_val_str;"
end end
function generateUpdateSQL(table_name::String, pk_dict::AbstractDict{String, Any},
data::AbstractDict{String, Any})
# Build SET clause
set_parts = String[]
for (key, value) in data
if key keys(data)
value_str = isa(value, AbstractString) ? "'$value'" : "$value"
push!(set_parts, "$(string(key)) = $value_str")
end
end
set_clause = join(set_parts, ", ")
# Build WHERE clause for composite keys
where_parts = String[]
for (col, val) in pk_dict
val_str = isa(val, AbstractString) ? "'$val'" : "$val"
push!(where_parts, "$(string(col)) = $val_str")
end
where_clause = join(where_parts, " AND ")
return "UPDATE $table_name SET $set_clause WHERE $where_clause;"
end
end # module end # module