sql >> Databáze >  >> RDS >> PostgreSQL

Python/postgres/psychopg2:získávání ID právě vloženého řádku

cursor.execute("INSERT INTO .... RETURNING id")
id_of_new_row = cursor.fetchone()[0]

A prosím, nevytvářejte SQL řetězce obsahující hodnoty ručně. Hodnoty můžete (a měli byste!) předávat samostatně, takže není nutné escapovat a vkládání SQL není možné:

sql_string = "INSERT INTO domes_hundred (name,name_slug,status) VALUES (%s,%s,%s) RETURNING id;"
cursor.execute(sql_string, (hundred_name, hundred_slug, status))
hundred = cursor.fetchone()[0]

Další podrobnosti naleznete v dokumentaci psycopg:http://initd.org/psycopg/docs/usage.html#passing-parameters-to-sql-queries



  1. Jak vytvořit index na poli JSON v Postgresu?

  2. Po instalaci na Mac resetujte kořenové heslo MySQL pomocí příkazu ALTER USER

  3. Musím se chránit před vkládáním SQL, pokud jsem použil rozevírací seznam?

  4. PL/SQL:jak vyvolám uživatelský vstup do procedury?