在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实现保存网页到本地示例
Mar 16 Python
Python下的twisted框架入门指引
Apr 15 Python
Python入门_学会创建并调用函数的方法
May 16 Python
深入理解Django的自定义过滤器
Oct 17 Python
Python探索之SocketServer详解
Oct 28 Python
Python中pygal绘制雷达图代码分享
Dec 07 Python
python书籍信息爬虫实例
Mar 19 Python
Django中的Model操作表的实现
Jul 24 Python
基于python指定包的安装路径方法
Oct 27 Python
详解Django-auth-ldap 配置方法
Dec 10 Python
浅谈Python中的全局锁(GIL)问题
Jan 11 Python
python识别验证码的思路及解决方案
Sep 13 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
一个基于PDO的数据库操作类(新) 一个PDO事务实例
2011/07/03 PHP
getJSON跨域SyntaxError问题分析
2014/08/07 PHP
PHP耦合设计模式实例分析
2018/08/08 PHP
JavaScript与C# Windows应用程序交互方法
2007/06/29 Javascript
javascript动画浅析
2012/08/30 Javascript
js鼠标及对象坐标控制属性详细解析
2013/12/14 Javascript
JS中attr和prop属性的区别以及优先选择示例介绍
2014/06/30 Javascript
JavaScript中的replace()方法使用详解
2015/06/06 Javascript
基于jQuery实现滚动刷新效果
2017/01/09 Javascript
arcgis for js栅格图层叠加(Raster Layer)问题
2017/11/22 Javascript
angular2中Http请求原理与用法详解
2018/01/11 Javascript
Vue拖拽组件开发实例详解
2018/05/11 Javascript
JavaScript中this关键字用法实例分析
2018/08/24 Javascript
QRCode.js二维码生成并能长按识别
2018/10/16 Javascript
微信小程序自定义底部导航带跳转功能
2018/11/27 Javascript
vue3.0 上手体验
2020/09/21 Javascript
[44:33]EG vs Liquid 2018国际邀请赛小组赛BO2 第二场 8.18
2018/08/19 DOTA
Python自动重试HTTP连接装饰器
2015/04/28 Python
Python中Random和Math模块学习笔记
2015/05/18 Python
python读写ini配置文件方法实例分析
2015/06/30 Python
微信跳一跳小游戏python脚本
2018/01/05 Python
Python基于matplotlib实现绘制三维图形功能示例
2018/01/18 Python
Python中循环引用(import)失败的解决方法
2018/04/22 Python
python 以16进制打印输出的方法
2018/07/09 Python
用python生成(动态彩色)二维码的方法(使用myqr库实现)
2019/06/24 Python
英国豪华针织品牌John Smedley的在线销售商:The Outlet by John Smedley
2018/04/08 全球购物
简述数据库的设计过程
2015/06/22 面试题
传播学专业毕业生自荐信
2013/11/04 职场文书
新学期校长寄语
2014/01/18 职场文书
劲霸男装广告词
2014/03/21 职场文书
入党自传范文2015
2015/06/26 职场文书
严以修身专题学习研讨会发言材料
2015/11/09 职场文书
酒店工程部的岗位职责汇总大全
2019/10/23 职场文书
Python可变与不可变数据和深拷贝与浅拷贝
2022/04/06 Python
Java服务调用RestTemplate与HttpClient的使用详解
2022/06/21 Java/Android
springboot+rabbitmq实现智能家居实例详解
2022/07/23 Java/Android