當前位置:
首頁 > 最新 > Python寫入數據到MySQL

Python寫入數據到MySQL

題圖:tom-holmes-511289-unsplash

調用pymysql包,寫入數據到表,遇到一個問題。沒想到解決方法竟是這樣...

問題描述。一張mysql表t,數據類型有字元型欄位field_s,數值型field_n。python提供數據源,調用pymysql包介面寫入數據到t.

一般都會這麼做:插入腳本為insert into t (field_s, field_n)values (%s, %f), (『s_val』, float(n_val) )調用execute介面,commit後提交。調試程序,發現報錯:a number is required, not str. 實際項目中由於插入的欄位比較多,本以為有些欄位類型未對應好,仔細檢查後,確認所有欄位類型都對應一致。那是什麼問題呢?

經過查詢發現,插入的所有欄位,格式要求一律為%s, 因此將上面腳本修改為:insert into t (field_s, field_n) values (%s,%s), (『s_val』, float(n_val) ) 後,問題得到解決。

這是有些奇怪,腳本中為什麼輸入格式是 %s 的欄位,被賦值為 float 型呢? 很彆扭!

這就是調用別人寫的開源包可能出現的一個困擾,需要完全按照作者的設計規範調用 API.

希望,看到的讀者,以後使用 pymysql 包時注意到這個字元格式問題。不知,你們遇到過嗎?


喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 Python 的精彩文章:

你日日夜夜愛的她,Python一鍵獲取各種美照,女友再也不用擔心我找不到照片了
Python基礎知識系列——列表和元組

TAG:Python |