解决出现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正则表达式匹配反斜杠''\''问题
Jul 17 Python
关于tf.reverse_sequence()简述
Jan 20 Python
python 回溯法模板详解
Feb 26 Python
python GUI库图形界面开发之PyQt5信号与槽的高级使用技巧(自定义信号与槽)详解与实例
Mar 06 Python
Python面向对象程序设计之静态方法、类方法、属性方法原理与用法分析
Mar 23 Python
Python HTMLTestRunner可视化报告实现过程解析
Apr 10 Python
查看jupyter notebook每个单元格运行时间实例
Apr 22 Python
Pycharm激活方法及详细教程(详细且实用)
May 12 Python
python 操作excel表格的方法
Dec 05 Python
Pandas DataFrame求差集的示例代码
Dec 13 Python
python如何读取.mtx文件
Apr 22 Python
Selenium浏览器自动化如何上传文件
Apr 06 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中一个完整表单处理实现代码
2011/11/10 PHP
PHP中最容易忘记的一些知识点总结
2013/04/28 PHP
PHP与MongoDB简介|安全|M+PHP应用实例详解
2013/06/17 PHP
PHP实现抓取迅雷VIP账号的方法
2015/07/30 PHP
PHP封装的MSSql操作类完整实例
2016/05/26 PHP
php链式操作的实现方式分析
2019/08/12 PHP
PHP生成图表pChart的示例解析
2020/07/31 PHP
php实现简单四则运算器
2020/11/29 PHP
Jquery实现的tab效果可以指定默认显示第几页
2013/10/16 Javascript
用jquery写的一个万年历(自写)
2014/01/20 Javascript
jQuery中siblings()方法用法实例
2015/01/08 Javascript
JavaScript实现数字数组按照倒序排列的方法
2015/04/06 Javascript
node网页分段渲染详解
2016/09/05 Javascript
基于easyui checkbox 的一些操作处理方法
2017/07/10 Javascript
原生JS实现循环Nodelist Dom列表的4种方式示例
2018/02/11 Javascript
JavaScript使用面向对象实现的拖拽功能详解
2019/06/12 Javascript
[51:28]EG vs Mineski 2018国际邀请赛小组赛BO2 第一场 8.16
2018/08/16 DOTA
Python简明入门教程
2015/08/04 Python
通过Python使用saltstack生成服务器资产清单
2016/03/01 Python
用Python写脚本,实现完全备份和增量备份的示例
2018/04/29 Python
使用python脚本实现查询火车票工具
2018/07/19 Python
Python一句代码实现找出所有水仙花数的方法
2018/11/13 Python
Python考拉兹猜想输出序列代码实践
2019/07/05 Python
django如何实现视图重定向
2019/07/24 Python
django之状态保持-使用redis存储session的例子
2019/07/28 Python
python基于FTP实现文件传输相关功能代码实例
2019/09/28 Python
Python enumerate函数遍历数据对象组合过程解析
2019/12/11 Python
Django+RestFramework API接口及接口文档并返回json数据操作
2020/07/12 Python
python 批量下载bilibili视频的gui程序
2020/11/20 Python
学校庆元旦歌咏比赛主持词
2014/03/18 职场文书
对祖国的寄语大全
2014/04/11 职场文书
护士2014年终工作总结
2014/11/11 职场文书
高校自主招生校长推荐信
2015/03/23 职场文书
2015年英语教研组工作总结
2015/05/23 职场文书
2015年中秋晚会主持词
2015/07/01 职场文书
消防宣传语大全
2015/07/13 职场文书