Python操作Mysql數據庫時SQL語句的格式問題


一、概述

近日使用Python對Mysql數據庫進行操作,遇到SQL語句死活出問題的情況。由於最初沒有將異常打印出來,一直不知道原因。隨后,將異常打印出來之后,通過異常信息,對代碼進行修改。最終,成功實現了對數據庫的操作,並總結出了SQL語句在Python代碼中的格式(規范)問題。特此寫博文以記之。

二、問題描述

2.1 問題提出

特別注意:在建數據庫的時候,使用的表名、類名均帶引號

在Python語句中,我使用過三種格式的語句,分別為:

  • 方式1:表名、類名、記錄值值均帶引號sql = "INSERT INTO 'entity' ('twitterName') VALUES ('%s')" % (twitterName)
  • 方式2:表名、類名帶引號,記錄值不帶引號sql = "INSERT INTO 'entity' ('twitterName') VALUES (%s)" % (twitterName)
  • 方式3:表名、類名不帶引號,記錄值帶引號sql = "INSERT INTO entity (twitterName) VALUES ('%s')" % (twitterName)

2.2 得到的結果

方式1

方式2

方式3

2.3 結果分析與總結

從2.2不難看出,表名、類名不要加引號,記錄值需要加引號。經過測試還發現,當記錄值為字符串時需要加引號,記錄值為數字時,不用加引號。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM