2013-08-20 46 views
1

我想將2個字符串添加到表中。將多個字符串插入到一個表中

我的INSERT語句是:

INSERT INTO "State" 
     (state, relevant_id) 
     VALUES (%s, %s) """, state_values, relevant_id 

這不工作,因爲我提供的參數太多。 Relevant_id是一個保存整數的變量,而state_values是與relevant_id有關的值。

有沒有辦法插入來自2個不同變量的字符串?我在python編碼和使用postgres作爲數據庫。

回答

2

你應該在第二個參數傳遞查詢參數作爲一個元組execute

cursor.execute("""INSERT INTO 
         State 
         (state, relevant_id) 
        VALUES 
         (%s, %s);""", 
       (state_values, relevant_id)) 

如果你這樣做,你會得到同樣逃脫,以防止SQL注入是免費的。

希望有所幫助。

+0

我想我沒有把整個代碼放在那裏,但上面的代碼包裹在cursor.execute函數中。 – nlr25

+0

嗯,我想你沒有像我那樣把參數放在一個元組中。請檢查。 – alecxe

+0

你說得對。對不起,我沒有捕捉到元組語法。謝謝你的幫助。你解決它。 – nlr25

相關問題