Sorry, not totally sure how to fix it, but what you've got now is quite
confused. You've got just 2 placeholders in your SQL statement "values(%s,
%s)" but 3 in placeholderlist so right there it isn't going to work. Plus,
you don't want "values([val1, val2], [val3, val4]) in the final SQL anyway
you want "values(val1, val2)".
Just a guess (totally untested), but to get this to work you may have to
make your SQL query dynamically.
placeholderlist=[[val1a,val2a], [val1b,val2b], [val1c,val2c]]
#you've got 3 sets of values, so you'll need 3 values(%s, %s) in the sql -
add in the necessary values(%s, %s) dynamically based on
len(placeholderslist)
value_placeholders = ', '.join(['values(%s, %s)']*len(placeholderslist))
sql = "insert into mytable(col1,col2) "+value_placeholders
#and you'd then need all of those value pairs in a single flattened list,
again actually do dynamically
placeholders = []
for v in placeholderslist:
placeholders.extend(v)
#gives placeholders = [val1a, val2a, val1b, val2b, val1c, val2c]
#and then hopefully this would work
db.executesql(sql, placeholders)
#hopefully ends up with
#INSERT INTO mytable(col1, col2) values(val1a, val2a), values(val2a,
val2b), values(val3a, val3b)
Again I haven't tested this, don't even have postgresql installed at the
moment but give it a shot.
--
---
You received this message because you are subscribed to the Google Groups
"web2py-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.