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

咱还是直接看代码吧!

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()

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

看问题我看是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)数据实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。

(0)

相关推荐

  • 使用python将excel数据导入数据库过程详解

    因为需要对数据处理,将excel数据导入到数据库,记录一下过程. 使用到的库:xlrd 和 pymysql (如果需要写到excel可以使用xlwt) 直接丢代码,使用python3,注释比较清楚. import xlrd import pymysql # import importlib # importlib.reload(sys) #出现呢reload错误使用 def open_excel(): try: book = xlrd.open_workbook("XX.xlsx")

  • Python 解析pymysql模块操作数据库的方法

    pymysql 是 python 用来操作MySQL的第三方库,下面具体介绍和使用该库的基本方法. 1.建立数据库连接 通过 connect 函数中 parameter 参数 建立连接,连接成功返回Connection对象 import pymysql #建立数据库连接 connection = pymysql.connect(host = 'localhost', user = 'root', password = '123456', database = 'mydb', charset =

  • 解决python3插入mysql时内容带有引号的问题

    插入mysql时,如果内容中有引号等特殊符号,会报错, 解决方法可以用反斜杠转义,还可以用pymysql的一个方法自动转义: c = ''' 北京时间9月20日晚间9点半,智能供应链服务供应商百世集团将在<a class="wt_article_link" onmouseover="WeiboCard.show(2125973432,'tech',this)" href="?zw=tech" rel="external nofol

  • pymysql 插入数据 转义处理方式

    最近用pymysql把一些质量不是很高的数据源导入mysql数据库的时候遇到一点问题,主要是遇到像 \ 这样的具有特殊意义的字符时比较难处理.这里有一个解决方案 基本环境 python3 pymysql linux 问题描述 插入(查询)数据时遇到一些特殊字符会使得程序中断.操作失败.比如 \这样的转义字符 解决方案 插入(查询)之前用 connection.escape(str)处理一下即可 代码示例 import pymongo sql_pattern = "select * from my

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

    咱还是直接看代码吧! 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) value

  • Python使用pymysql从MySQL数据库中读出数据的方法

    python3.x已经不支持mysqldb了,支持的是pymysql 使用pandas读取MySQL数据时,使用sqlalchemy,出现No module named 'MySQLdb'错误. 安装:打开Windows PowerShell,输入pip3 install PyMySQL即可 import pymysql.cursors import pymysql import pandas as pd #连接配置信息 config = { 'host':'127.0.0.1', 'port'

  • python 3.6 +pyMysql 操作mysql数据库(实例讲解)

    版本信息:python:3.6 mysql:5.7 pyMysql:0.7.11 ################################################################# #author: 陈月白 #_blogs: http://www.cnblogs.com/chenyuebai/ ################################################################# # -*- coding: utf-8

  • python通过elixir包操作mysql数据库实例代码

    本文研究的主要是python通过elixir包操作mysql数据库的相关实例,具体如下. python操作数据库有很多方法,下面介绍elixir来操作数据库.elixir是对sqlalchemy lib的一个封装,classes和tables是一一对应的,能够一步定义classes,tables和mappers,支持定义多个primary key. 定义model.py from elixir import sqlalchemy from elixir import * engine =sqla

  • 利用python中pymysql操作MySQL数据库的新手指南

    目录 一. pymysql介绍 二. 连接数据库的完整流程 1. 引入pymysql模块 2. 创建连接对象 3. 使用连接对象创建游标对象 4. 准备需要使用的sql语句 5. 使用游标对象执行sql语句(如果是数据修改的操作,会返回受影响的行数) 6. 如果执行语句是查询操作,需要使用游标对象获取查询结果 7. 关闭游标对象 8. 关闭连接对象 三. 完整的简易源码 总结 一. pymysql介绍 pymysql 是在 Python3.x 版本中用于连接和操作 MySQL 服务器的一个库.

  • Python操作MySQL数据库的两种方式实例分析【pymysql和pandas】

    本文实例讲述了Python操作MySQL数据库的两种方式.分享给大家供大家参考,具体如下: 第一种 使用pymysql 代码如下: import pymysql #打开数据库连接 db=pymysql.connect(host='1.1.1.1',port=3306,user='root',passwd='123123',db='test',charset='utf8') cursor=db.cursor()#使用cursor()方法获取操作游标 sql = "select * from tes

  • python 基于PYMYSQL使用MYSQL数据库

    在做测试的时候都会用到数据库,今天写一篇通过python连接MYSQL数据库 什么是MYSQL数据库 MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下产品.MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是最好的 RDBMS (Relational Database Management System,关系数据库管理系统) 应用软件之一. 什么是PYMYSQL PyMySQL 是在 Python3.x 版本中用于

  • Python从MySQL数据库中面抽取试题,生成试卷

    一.背景 本文章主要是分享如何使用Python从MySQL数据库中面抽取试题,生成的试卷每一份都不一样. 二.准备工作 1.安装Python3 下载地址:https://www.python.org/downloads/windows/ 2.安装库 pip install python-docx==0.8.10 pip install PyMySQL==1.0.2 3.试题库.xlsx 开发程序前需要先收集试题,本文是将试题收集存放MySQL数据库中,格式如下: 选择题数据库截图: 填空题/解答

  • Python实现mysql数据库中的SQL文件生成和导入

    目录 1.将mysql数据导出到SQL文件中(数据库存在的情况) 2.将现有的sql文件数据导入到数据库中(前提数据库存在) 3.利用Navicat导出SQL文件和导入SQL文件 1)从数据库导出SQL文件 2)导入SQL文件到数据库 1.将mysql数据导出到SQL文件中(数据库存在的情况) 主要需要修改数据库的相关信息,端口号.用户名.密码等 其中数据库得存在,不然会报错 : #!/usr/bin/env python # -*- coding: utf-8 -*- # @descripti

  • flask + pymysql操作Mysql数据库的实例

    安装flask-sqlalchemy.pymysql模块 pip install flask-sqlalchemy pymysql ### Flask-SQLAlchemy的介绍 1. ORM:Object Relationship Mapping(模型关系映射). 2. flask-sqlalchemy是一套ORM框架. 3. ORM的好处:可以让我们操作数据库跟操作对象是一样的,非常方便.因为一个表就抽象成一个类,一条数据就抽象成该类的一个对象. 4. 安装`flask-sqlalchemy

随机推荐