在python中使用pymysql往mysql数据库中插入(insert)数据实例


Posted in Python onMarch 02, 2020

咱还是直接看代码吧!

from pymysql import *


def main():
  # 创建connection连接
  conn = connect(host='', port=3306, database='', user='',
          password='', charset='utf8')
  # 获取cursor对象
  cs1 = conn.cursor()
  # 执行sql语句
  query = 'insert into 表名(列名1, 列名2, 列名3, 列名4, 列名5, 列名6) values(%s, %s, %s, %s, %s, %s)'
  列名1 = 值1
  列名2 = 值2
  列名3 = 值3
  列名4 = 值4
  列名5 = 值5
  列名6 = 值6
  values = (列名1, 列名2, 列名3, 列名4, 列名5, 列名6)
  cs1.execute(query, values)

  # 提交之前的操作,如果之前已经执行多次的execute,那么就都进行提交
  conn.commit()

  # 关闭cursor对象
  cs1.close()
  # 关闭connection对象
  conn.close()


if __name__ == '__main__':
  main()

补充拓展:记学习pymysql插入数据时的一次坑

在学习python时,做一个简单的mysql的操作,正确代码如下:

import pymysql.cursors
 
# 获取数据库连接
connection = pymysql.connect(
  host='xx.xx.xx.xx',
  port=3310,
  user='root',
  password='root',
  db='wiki'
)
 
try:
  #获取会话指针
  with connection.cursor() as cursor:
    # 创建sql语句
    sql = "insert into `user`(`name`,`age`,`sex`) values (%s,%s,%s)"
 
    # 执行sql
    cursor.execute(sql,("lisi",18,"f"))
    # cursor.execute(sql)
    # 提交
    connection.commit()
except:
  print("something wrong")
  db.rollback()
finally:
  connection.close()

但在整个过程中,一个小问题确着实有点让人难受,在运行时它总报如下错误:

在python中使用pymysql往mysql数据库中插入(insert)数据实例

看问题我看是db建立连接处,可是查了半天也没觉得db赋值有什么问题,再看最后一行%d格式问题,就自然的以为是后面插入时赋值的问题,可是还是没发现问题,于是将赋值直接放在了sql语句中,如:"insert into `user`(`name`,`age`,`sex`) values ('zhangsan',18,'f')"(想那总不可能再出错了吧),结果还是报这个错误,于是确定不是在sql赋值的问题,回过头去看db="wiki"这一句,突然看到port='3310'这一句,瞬间想到端口是不是不用加引号,抱着试试的态度,结果okay了。

瞬间感觉好无奈,看看控制台的错误,完全没有定位到port这一行去,那一般都是在提示错误的一行及以下查找原因,结果这次跑上面去了!!!

最后,数据类型该是啥就是啥,一定要细心,谨记谨记!

以上这篇在python中使用pymysql往mysql数据库中插入(insert)数据实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python pdb调试方法分享
Jan 21 Python
Python实现优先级队列结构的方法详解
Jun 02 Python
Python新手们容易犯的几个错误总结
Apr 01 Python
Python字符串格式化的方法(两种)
Sep 19 Python
python2.7+selenium2实现淘宝滑块自动认证功能
Feb 24 Python
Python使用matplotlib绘制余弦的散点图示例
Mar 14 Python
Django中日期处理注意事项与自定义时间格式转换详解
Aug 06 Python
在Qt5和PyQt5中设置支持高分辨率屏幕自适应的方法
Jun 18 Python
django基础学习之send_mail功能
Aug 07 Python
python实现的自动发送消息功能详解
Aug 15 Python
Django中ORM找出内容不为空的数据实例
May 20 Python
pytorch中的model=model.to(device)使用说明
May 24 Python
Python基于requests库爬取网站信息
Mar 02 #Python
使用python3 实现插入数据到mysql
Mar 02 #Python
python数字类型math库原理解析
Mar 02 #Python
Python如何实现在字符串里嵌入双引号或者单引号
Mar 02 #Python
Python random库使用方法及异常处理方案
Mar 02 #Python
python 实现人和电脑猜拳的示例代码
Mar 02 #Python
解决python3插入mysql时内容带有引号的问题
Mar 02 #Python
You might like
一个PHP的远程图片抓取函数分享
2013/09/25 PHP
PHP面向对象程序设计方法实例详解
2016/12/24 PHP
PHP实现向关联数组指定的Key之前插入元素的方法
2017/06/06 PHP
php实现简单四则运算器
2020/11/29 PHP
比较简单实用的使用正则三种版本的js去空格处理方法
2007/11/18 Javascript
JS去除字符串的空格增强版(可以去除中间的空格)
2009/08/26 Javascript
JavaScript两种跨域技术全面介绍
2014/04/16 Javascript
JQuery鼠标移到小图显示大图效果的方法
2015/06/10 Javascript
Bootstrap表单布局样式代码
2016/05/31 Javascript
jquery获取点击控件的绝对位置简单实例
2016/10/13 Javascript
Ztree新增角色和编辑角色回显问题的解决
2016/10/25 Javascript
Radio 单选JS动态添加的选项onchange事件无效的解决方法
2016/12/12 Javascript
微信小程序 两种为对象属性赋值的方式详解
2017/02/23 Javascript
JS和Canvas实现图片的预览压缩和上传功能
2018/03/30 Javascript
Vue+axios实现统一接口管理的方法
2018/07/23 Javascript
浅谈angular2子组件的事件传递(任意组件事件传递)
2018/09/30 Javascript
Vue实现远程获取路由与页面刷新导致404错误的解决
2019/01/31 Javascript
Vue实现商品分类菜单数量提示功能
2019/07/26 Javascript
Echarts实现多条折线可拖拽效果
2019/12/19 Javascript
[01:31:02]TNC vs VG 2019国际邀请赛淘汰赛 胜者组赛BO3 第一场
2019/08/22 DOTA
Python实现图片转字符画的示例
2017/08/22 Python
使用Python做垃圾分类的原理及实例代码附源码
2019/07/02 Python
python 返回一个列表中第二大的数方法
2019/07/09 Python
python运用sklearn实现KNN分类算法
2019/10/16 Python
python中可以声明变量类型吗
2020/06/18 Python
4款Python 类型检查工具,你选择哪个呢?
2020/10/30 Python
10分钟理解CSS3 Grid布局
2018/12/20 HTML / CSS
HTML 5 input placeholder 属性如何完美兼任ie
2014/05/12 HTML / CSS
linux面试题参考答案(8)
2015/08/11 面试题
应届护士推荐信
2013/11/16 职场文书
党员学习中共十八大报告思想汇报
2014/09/15 职场文书
中学生运动会新闻稿
2014/09/24 职场文书
三峡大坝导游词
2015/01/31 职场文书
志愿者个人总结
2015/03/03 职场文书
我的生日感言
2015/08/03 职场文书
Golang ort 中的sortInts 方法
2022/04/24 Golang