0
我是python和SQL的新手,但享受學習曲線。插入記錄和映射字符串到字段?
我正在使用的pymssql,並有我想象將是一個非常基本的問題。
在函數中,我需要插入一個表中的記錄,並傳遞到INSERT語句一些變量我前面計算。
目前我的代碼看起來是這樣的:
var 1 = "Hello"
var 2 = "Bye"
var 3 = "12/12/12
cursor.execute("INSERT INTO table (field1, field2, field3) VALUES(%s, %s, %s)", var1, var2, var3)
這會返回一個錯誤:
execute() takes at most 2 positional arguments (4 given)
什麼我做錯了,並銘記我學習,這將是一個更優雅這樣做的方式?
謝謝。如果任何人有時間,會喜歡看我的例子中使用較新的高級字符串格式的答案。 – Simon
高級字符串格式不適用於此,因爲您需要(單獨)傳遞查詢字符串和變量。這是因爲execute方法可以正確地清理SQL變量的值。 –
謝謝Burhan。所以如果(我不是)被限制使用python的未來版本,我相信字符串格式化將被棄用,我該怎麼辦? – Simon