解决出现Incorrect integer value: '' for column 'id' at row 1的问题


Posted in Python onOctober 29, 2017

解决出现Incorrect integer value: '' for column 'id' at row 1的问题

前言:

今天在学习Python的过程中操作数据库,遇到了一个问题,执行sql语句插入数据的时候报错Incorrect integer value: '' for column 'id' at row 1

我的数据库设计是这样的:

一个很简单的用户信息表,其中ID是int类型,自动填充的主键,其他两个非主键,我执行的insert语句是这样的:mysql.db_insert("insert into userinfo values('','sven','111222','sven@qq.com','1')")

执行的时候一直报错Incorrect integer value: '' for column 'id' at row 1,最后google了一下,发现mysql版本到5以上的都会遇到这样的问题,插入空字符要使用NULL 正确的SQL语句应该是mysql.db_insert("insert into userinfo values(NULL,'sven','111222','sven@qq.com','1')"),记录下来与大家共勉,共通学习。

顺便分享一个自己写的操作数据库的Python类

我的Python数据库编码使用utf-8,所以连接数据库的时候charset这个字段我就没有做处理

# -*- 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

如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

Python 相关文章推荐
python 多线程应用介绍
Dec 19 Python
python快速排序代码实例
Nov 21 Python
Python实现获取网站PR及百度权重
Jan 21 Python
Pandas实现数据类型转换的一些小技巧汇总
May 07 Python
Selenium定位元素操作示例
Aug 10 Python
python实现飞机大战
Sep 11 Python
Python Pandas分组聚合的实现方法
Jul 02 Python
详解Matplotlib绘图之属性设置
Aug 23 Python
python和go语言的区别是什么
Jul 20 Python
Pygame框架实现飞机大战
Aug 07 Python
python+django+selenium搭建简易自动化测试
Aug 19 Python
matplotlib更改窗口图标的方法示例
Feb 03 Python
Python批量更改文件名的实现方法
Oct 29 #Python
python生成二维码的实例详解
Oct 29 #Python
python 读写中文json的实例详解
Oct 29 #Python
Python3 处理JSON的实例详解
Oct 29 #Python
深入理解Python中的*重复运算符
Oct 28 #Python
13个最常用的Python深度学习库介绍
Oct 28 #Python
python探索之BaseHTTPServer-实现Web服务器介绍
Oct 28 #Python
You might like
php获得客户端浏览器名称及版本的方法(基于ECShop函数)
2015/12/23 PHP
[原创]CI(CodeIgniter)简单统计访问人数实现方法
2016/01/19 PHP
tp框架(thinkPHP)实现三次登陆密码错误之后锁定账号功能示例
2018/05/24 PHP
YII2框架中使用RBAC对模块,控制器,方法的权限控制及规则的使用示例
2020/03/18 PHP
jQuery 对象中的类数组操作
2009/04/27 Javascript
给Function做的OOP扩展
2009/05/07 Javascript
javascript中String类的subString()方法和slice()方法
2011/05/24 Javascript
jQuery选择id属性带有点符号元素的方法
2015/03/17 Javascript
JavaScript中setUTCMilliseconds()方法的使用详解
2015/06/12 Javascript
JavaScript的Backbone.js框架环境搭建及Hellow world示例
2016/05/07 Javascript
JavaScript中关键字 in 的使用方法详解
2016/10/17 Javascript
详解自动生成博客目录案例
2016/12/09 Javascript
koa上传excel文件并解析的实现方法
2018/08/09 Javascript
基于Vue实现电商SKU组合算法问题
2019/05/29 Javascript
layui 数据表格 根据值(1=业务,2=机构)显示中文名称示例
2019/10/26 Javascript
vue 组件内获取actions的response方式
2019/11/08 Javascript
vue-property-decorator用法详解
2019/12/12 Javascript
python缩进区别分析
2014/02/15 Python
python数组过滤实现方法
2015/07/27 Python
python生成器,可迭代对象,迭代器区别和联系
2018/02/04 Python
详解Django中间件的5种自定义方法
2018/07/26 Python
新手如何发布Python项目开源包过程详解
2019/07/11 Python
Python操作Mongodb数据库的方法小结
2019/09/10 Python
python实现图片二值化及灰度处理方式
2019/12/07 Python
Python如何省略括号方法详解
2020/03/21 Python
用pushplus+python监控亚马逊到货动态推送微信
2021/01/29 Python
美国Rue La La闪购网站:奢侈品、中高档品牌限时折扣
2016/10/19 全球购物
澳大利亚领先的女帽及配饰公司:Morgan&Taylor
2019/12/01 全球购物
EMPHASIS艾斐诗官网:周生生旗下原创精品珠宝品牌
2020/12/17 全球购物
介绍下static、final、abstract区别
2015/01/30 面试题
服装电子商务创业计划书
2014/01/30 职场文书
总经理秘书岗位职责
2014/03/17 职场文书
2014年母亲节寄语
2014/05/07 职场文书
商场客服专员岗位职责
2014/06/13 职场文书
2014年项目经理工作总结
2014/11/24 职场文书
学校实习推荐信
2015/03/27 职场文书