Commit a8661a46e26daf86acf24f9eeed06da7725f6c05
1 parent
60b0a2c4
[*] in table the UPDATE is replaced by an "UPSERT"
Showing
1 changed file
with
6 additions
and
3 deletions
Show diff stats
src/generation/types.anubis
| @@ -303,7 +303,7 @@ public define Maybe(One) | @@ -303,7 +303,7 @@ public define Maybe(One) | ||
| 303 | " none then\n"+ | 303 | " none then\n"+ |
| 304 | " if sql_query_timeout(db,\n"+ | 304 | " if sql_query_timeout(db,\n"+ |
| 305 | " \"INSERT INTO "+name+"\n"+ | 305 | " \"INSERT INTO "+name+"\n"+ |
| 306 | - insert_values(columns, " ")+";\",\n"+ | 306 | + insert_values(columns, false, " ")+";\",\n"+ |
| 307 | generate_Bind_list(columns, name, " ", true)+",\n"+ | 307 | generate_Bind_list(columns, name, " ", true)+",\n"+ |
| 308 | " \"update_"+name+" (INSERT)\") is\n"+ | 308 | " \"update_"+name+" (INSERT)\") is\n"+ |
| 309 | " {\n"+ | 309 | " {\n"+ |
| @@ -322,9 +322,12 @@ public define Maybe(One) | @@ -322,9 +322,12 @@ public define Maybe(One) | ||
| 322 | //UPDATE SQL query | 322 | //UPDATE SQL query |
| 323 | " db_id(idx) then\n"+ | 323 | " db_id(idx) then\n"+ |
| 324 | " if sql_query_timeout(db,\n"+ | 324 | " if sql_query_timeout(db,\n"+ |
| 325 | - " \"UPDATE "+name+" SET\n"+ | 325 | + " \"INSERT INTO "+name+"\n"+ |
| 326 | + insert_values(columns, true, " ")+"\n"+ | ||
| 327 | + " ON CONFLICT( \\\"id\\\") DO UPDATE SET\n"+ | ||
| 326 | update_values(columns, " ")+"\n"+ | 328 | update_values(columns, " ")+"\n"+ |
| 327 | - " WHERE id = \"+idx+\";\",\n"+ | 329 | + " WHERE id = :v_id;\",\n"+ |
| 330 | + " [bind_Int(\":v_id\", idx)]+\n"+ | ||
| 328 | generate_Bind_list(columns, name, " ", false)+",\n"+ | 331 | generate_Bind_list(columns, name, " ", false)+",\n"+ |
| 329 | " \"update_"+name+" (UPDATE)\") is { \n"+ | 332 | " \"update_"+name+" (UPDATE)\") is { \n"+ |
| 330 | " error(sql_error) then\n"+ | 333 | " error(sql_error) then\n"+ |