sql >> Database teknologi >  >> RDS >> PostgreSQL

cursor.execute(INSERT INTO im_entry.test (+entrym+) VALUES ('+p+');)

Som standard starter psycopg2 transaktioner for dig automatisk, hvilket betyder, at du skal bede den om at forpligte sig. Bemærk at commit er en metode til connection , ikke cursor .

conn = psycopg2.connection('...')
cur = conn.cursor()
cur.execute("...")
conn.commit()

Hensigten er, at du kan gruppere flere udsagn sammen i en enkelt transaktion, så andre forespørgsler ikke vil se halvgjorte ændringer, men også af præstationsmæssige årsager.

Bemærk også, at du altid bør bruge pladsholdere i stedet for at sammenkæde strenge.
F.eks.:

cur.execute("INSERT INTO im_entry.test (colname) VALUES (%s)", [p])

Ellers risikerer du at gøre SQL-injektionsangreb mulige.




  1. Import af en CSV til MySQL med andet datoformat

  2. SUBSTRING Kommando i SQL:A Primer

  3. Sådan administreres sessioner i Node.js ved hjælp af Passport, Redis og MySQL

  4. RMAN Backup kommandoer