Re: [psycopg] UPDATE command
От | Graeme Gemmill |
---|---|
Тема | Re: [psycopg] UPDATE command |
Дата | |
Msg-id | c1a5eaff-493b-ed62-81d1-994d73d4fd45@gemmill.name обсуждение исходный текст |
Ответ на | Re: [psycopg] UPDATE command (Jonathan Rogers <jrogers@emphasys-software.com>) |
Ответы |
Re: [psycopg] UPDATE command
|
Список | psycopg |
On 21/07/17 20:36, Jonathan Rogers wrote: > On 07/21/2017 12:24 PM, Graeme Gemmill wrote: >> I wish to issue an UPDATE command to update 4 columns of a row that has >> a unique primary key vindex: >> >> SQL = "UPDATE contact SET firstname, addnlnames, surname, rev WHERE >> vindex =? (%s, %s, %s, %s);" >> data = (.......) >> cursor.execute(SQL, data) >> >> How is the value of vindex specified? Is my ? to be replaced by %s where >> the value of vindex is the first of the data values? > It seems you may be confused about both SQL syntax and psycopg2's > handling of parameters. Start with the Posgtgres documentation about the > UPDATE statement: > > https://www.postgresql.org/docs/9.6/static/sql-update.html > > As explained in its documentation, "%s" is the psycopg2 placeholder. The > SQL string you should pass to pyscopg2 is "UPDATE contact SET firstname > = %s, addnlnames = %s, surname = %s, rev =% WHERE vindex = %s". > > http://initd.org/psycopg/docs/usage.html#passing-parameters-to-sql-queries > Thank you John Evan, Jonathan for replies. The structure I used is valid and even recommended for an INSERT command; I couldn't see how to use it for an UPDATE. Anyway, sorted now. Graeme
В списке psycopg по дате отправления: