解決出現(xiàn)Incorrect integer value: '' for column 'id' at row 1的問題
解決出現(xiàn)Incorrect integer value: '' for column 'id' at row 1的問題
前言:
今天在學(xué)習(xí)Python的過程中操作數(shù)據(jù)庫,遇到了一個(gè)問題,執(zhí)行sql語句插入數(shù)據(jù)的時(shí)候報(bào)錯(cuò)Incorrect integer value: '' for column 'id' at row 1
我的數(shù)據(jù)庫設(shè)計(jì)是這樣的:
一個(gè)很簡單的用戶信息表,其中ID是int類型,自動(dòng)填充的主鍵,其他兩個(gè)非主鍵,我執(zhí)行的insert語句是這樣的:mysql.db_insert("insert into userinfo values('','sven','111222','sven@qq.com','1')")
執(zhí)行的時(shí)候一直報(bào)錯(cuò)Incorrect integer value: '' for column 'id' at row 1,最后google了一下,發(fā)現(xiàn)mysql版本到5以上的都會(huì)遇到這樣的問題,插入空字符要使用NULL 正確的SQL語句應(yīng)該是mysql.db_insert("insert into userinfo values(NULL,'sven','111222','sven@qq.com','1')"),記錄下來與大家共勉,共通學(xué)習(xí)。
順便分享一個(gè)自己寫的操作數(shù)據(jù)庫的Python類
我的Python數(shù)據(jù)庫編碼使用utf-8,所以連接數(shù)據(jù)庫的時(shí)候charset這個(gè)字段我就沒有做處理
# -*- coding: utf-8 -*-
import MySQLdb
class Mysql:
conn = ''
cursor = ''
def __init__(self, host='localhost', usr='blogtest', password='111222', db='blogtest'):
try:
self.conn = MySQLdb.connect(host, usr, password, db)
except Exception, e:
print e
self.cursor = self.conn.cursor()
#self.query('SET NAME %s ' % charset)
def query(self, sql):
self.cursor.execute(sql)
def show(self):
return self.cursor.fetchall()
def db_insert(self,sql):
self.cursor.execute(sql)
self.conn.commit()
def __del__(self):
self.cursor.close()
self.conn.close()
if __name__ == '__main__':
mysql = Mysql()
mysql.db_insert("insert into userinfo values(NULL,'sven','111222','sven@qq.com','1')")
mysql.query('SELECT * FROM userinfo')
data = mysql.show()
for x in data:
print x
如有疑問請留言或者到本站社區(qū)交流討論,感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!
相關(guān)文章
教你利用Python玩轉(zhuǎn)histogram直方圖的五種方法
這篇文章主要給大家介紹了關(guān)于如何利用Python玩轉(zhuǎn)histogram直方圖的五種方法,文中通過示例代碼介紹的非常詳細(xì),對大家學(xué)習(xí)或者使用python具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2018-07-07
Python中使用異常處理來判斷運(yùn)行的操作系統(tǒng)平臺(tái)方法
這篇文章主要介紹了Python中使用異常處理來判斷運(yùn)行的操作系統(tǒng)平臺(tái)方法,這個(gè)方法比較新穎,,需要的朋友可以參考下2015-01-01
Python實(shí)現(xiàn)wav和pcm的轉(zhuǎn)換方式
這篇文章主要介紹了Python實(shí)現(xiàn)wav和pcm的轉(zhuǎn)換方式,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-05-05
淺談關(guān)于Python3中venv虛擬環(huán)境
這篇文章主要介紹了淺談關(guān)于Python3中venv虛擬環(huán)境,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2018-08-08
基于Python實(shí)現(xiàn)二維圖像雙線性插值
雙線性插值,又稱為雙線性內(nèi)插。在數(shù)學(xué)上,雙線性插值是有兩個(gè)變量的插值函數(shù)的線性插值擴(kuò)展,其核心思想是在兩個(gè)方向分別進(jìn)行一次線性插值。本文將用Python實(shí)現(xiàn)二維圖像雙線性插值,感興趣的可以了解下2022-06-06

