sql >> Databáze >  >> RDS >> Mysql

Pro názvy sloupců použijte seznam Pythonu v dotazu SQL

Seznam sloupců, které chcete vybrat jako parametr, nemůžete předat cur.execute . Mělo by to být součástí vašeho výrazu SQL, něco jako:

sql = "SELECT " + ",".join(pythonlist) + " FROM data WHERE name = %s INTO OUTFILE filename"
cur.execute(sql, (name,))

Jedna věc, kterou je třeba si uvědomit, je, že zástupný symbol pro hodnotu parametru v SQL závisí na databázi. Pokud %s nefunguje, zkuste použít ? nebo :1 . Viz https://www.python.org/dev/peps/pep -0249/#paramstyle pro více podrobností.




  1. Použití proměnných PHP SESSION k ukládání výsledků dotazů MySQL

  2. DBA - Jak zabít všechny databázové procesy na serveru SQL

  3. Jak nastavit výchozí řádek pro dotaz, který nevrací žádné řádky?

  4. Jaký je výchozí název omezení v SQL Server?