Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Używanie dict Pythona do instrukcji SQL INSERT

Myślę, że komentarz dotyczący używania tego z MySQL nie jest do końca kompletny. MySQLdb nie wykonuje podstawiania parametrów w kolumnach, tylko wartości (IIUC) - więc może bardziej jak

placeholders = ', '.join(['%s'] * len(myDict))
columns = ', '.join(myDict.keys())
sql = "INSERT INTO %s ( %s ) VALUES ( %s )" % (table, columns, placeholders)
# valid in Python 2
cursor.execute(sql, myDict.values())
# valid in Python 3
cursor.execute(sql, list(myDict.values()))

Nie możesz jednak uciec na kolumnach, więc możesz najpierw je sprawdzić...

Zobacz http://mail.python.org/pipermail/tutor/ 2010-December/080701.html dla bardziej kompletnego rozwiązania



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak zarządzać bazą danych za pomocą Adminera

  2. Java:Wstaw wiele wierszy do MySQL za pomocą PreparedStatement

  3. Ostrzeżenie:PDO::__construct():[2002] Brak takiego pliku lub katalogu (próba połączenia przez unix:///tmp/mysql.sock) w

  4. Wprowadzenie do grupowania i sumowania SQL

  5. Funkcja MySQL TRUNCATE() – Obcina liczbę do określonej liczby miejsc dziesiętnych