如何執行mysqldb插入不同參數? 的例子說:Python MYSQLdb如何執行插入不同參數
add_employee = ("INSERT INTO employees "
"(first_name, last_name, hire_date, gender, birth_date) "
"VALUES (%s, %s, %s, %s, %s)")
data_employee = ('Geert', 'Vanderkelen', tomorrow, 'M', date(1977, 6, 14))
cursor.execute(add_employee, data_employee)
我想要做的就是
cursor.execute("INSERT INTO %s (%s) VALUES (%s)", ('animals', 'name', 'fox'))
,但我得到了一個錯誤
MySQL Error [1064]: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''animals' ('name') VALUES ('fox')' at line 1
我明白MySQLdb的的格式化工作錯了,是有一種方法來解決這個問題?而且,是它在某種程度上可以做到這樣的事情
cursor.execute("INSERT INTO %s (%s) VALUES (%s)", ('animals', ('name','color'), ('fox', 'orange'))
編輯:請不要立足於假定所有插入的數據會串你的答案。我也希望能夠通過BLOB數據與這些查詢
imageofafox = open('fox.jpg', 'rb').read()
sql = "INSERT INTO %s (%s) VALUES (%s)"
cursor.execute(sql, ('animals', 'name, picture', ('fox', imageofafox)))
不工作時,你的第一個代碼產生 MySQL錯誤[1064]:您的SQL語法錯誤;檢查與您的MySQL服務器版本相對應的手冊,在第1行 – 2015-03-31 18:03:47
處使用''animals'('name')VALUES('\'fox \'')'附近的正確語法。對不起,忘記了光標的自動引用執行,因爲我使用它與%和不與,所以錯誤是其他地方... – 2015-03-31 18:11:59
我最初的查詢沒有工作,因此在問題 – 2015-03-31 18:45:40