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

pymysql 是 python 用来操作MySQL的第三方库,下面具体介绍和使用该库的基本方法。

1.建立数据库连接

通过 connect 函数中 parameter 参数 建立连接,连接成功返回Connection对象

import pymysql

#建立数据库连接
connection = pymysql.connect(host = 'localhost',
        user = 'root',
        password = '123456',
        database = 'mydb',
        charset = 'utf8'
)
#print(connection)

pymysql.connect()函数中常用的连接参数有以下几种:

  • host:数据库主机名或者ip地址
  • port:端口号
  • user:数据库的账号
  • password 或 passwd:数据库的密码
  • database 或 db:数据库的名字
  • charset:编码方式

Connection对象的重要方法:

  • close() 关闭数据库连接
  • commit() 提交数据库事物
  • rollback() 回滚数据库事务
  • cursor() 获得 Cursor游标对象

2.创建游标

一个Cursor游标对象,暂时保存了SQL操作所影响到的数据,相同的数据库连接创建的游标所引起的数据变化,会马上反应到同一连接中的其它游标对象。但是不同数据库连接中的游标对象,是否能及时反映出来,则与数据库事物管理有关。

Cursor对象基本方法和属性:

execute(operation,[parameters])

执行一条SQL语句,operation时SQL语句,parameters是其参数。返回值是整数,表示执行SQL语句影响的行数

executemany(operation,[parameters])

批量执行SQL语句

callproc(procname,[parameters])

执行存储过程,procname是存储过程名

使用execute()和executemany()方法查询后,通过以下提取方法提取结果集

fetchone()

从结果集当中返回一条记录的序列,无则返回None

fetchmany([size=cursor.arraysize])

从结果集当中返回小于或等于size的记录序列,无则返回空序列,size默认是整个游标的行数

fetchall()

从结果集当中返回所有的行数

3.建立数据库(这里我使用的是NaviCat)

创建一个名为pydb的数据库,表名为user,字段name和userid

数据的查找

#建立数据库连接
connection = pymysql.connect(host = 'localhost',
        user = 'root',
        password = '123456',
        database = 'mydb',
        charset = 'utf8'
)
#print(connection)
try:
 #创建游标对象
 with connection.cursor() as cursor:
  #执行SQL操作
  sql = 'select name, userid from user where userid >%(id)s'
  cursor.execute(sql, {'id':0})
  #提取数据集
  result_set = cursor.fetchall()
  for row in result_set:
   print('id:{0} - name:{1}'.format(row[1],row[0]))
  #游标自动关闭
finally:
 #关闭连接
 connection.close()

数据插入

#数据增加
connection = pymysql.connect(host = 'localhost',
        user = 'root',
        password = '123456',
        database = 'mydb',
        charset = 'utf8'
)
try:
 with connection.cursor() as cursor:
  sql = 'insert into user (userid,name) values (%s,%s)'
  cursor.execute(sql,(3,'cc'))
  #affectcount = cursor.execute(sql,(3,'cc'))
  #print('影响的数据行数:{0}'.format(affectcount))
  #提交数据库事务
  connection.commit()
except pymysql.DatabaseError:
 #数据库事务回滚
 connection.rollback()
finally:
 connection.close()

执行结果:

数据更新

#数据更新
connection = pymysql.connect(host = 'localhost',
        user = 'root',
        password = '123456',
        database = 'mydb',
        charset = 'utf8'
)
#print(connection)
try:
 with connection.cursor() as cursor:
  sql = 'update user set name = %s where userid > %s'
  cursor.execute(sql,('Tom',2))
  #提交事务
  connection.commit()
  print('更新成功')
except pymysql.DatabaseError as e:
 connection.rollback()
 print(e)
finally:
 connection.close()

执行结果:

数据删除

#数据删除
connection = pymysql.connect(host = 'localhost',
        user = 'root',
        password = '123456',
        database = 'mydb',
        charset = 'utf8'
        )
try:
 with connection.cursor() as cursor:
  sql = 'delete from user where userid = %s'
  cursor.execute(sql,(1))
  #提交事务
  connection.commit()
  print("删除成功")
except pymysql.DatabaseError as e:
 connection.rollback()
 print(e)
finally:
 connection.close()

执行结果:

总的来说和java进行对比,在数据库的连接 和对

数据集进行的处理上,python体现的非常简洁,最主要易于使用和理解。人生苦短,我用python!

总结

以上所述是小编给大家介绍的Python 解析pymysql模块操作数据库的方法,希望对大家有所帮助!

(0)

相关推荐

  • 使用python连接mysql数据库之pymysql模块的使用

    安装pymysql pip install pymysql 2|0使用pymysql 2|1使用数据查询语句 查询一条数据fetchone() from pymysql import * conn = connect( host='127.0.0.1', port=3306, user='root', password='123456', database='itcast', charset='utf8') # 创建游标 c = conn.cursor() # 执行sql语句 c.execute

  • Python 中使用 PyMySQL模块操作数据库的方法

    之前用的Python2,连接MySQL用的是MySQLdb.现在换成python3.x了,由于 MySQLdb 模块还不支持 Python3.x,所以 Python3.x 如果想连接MySQL需要安装 PyMySQL模块,以下将介绍PyMySQL的安装及常用操作. 一.安装 pip install PyMySQL 二.常用操作 查询数据 import pymysql # 连接数据库 conn = pymysql.connect( host='127.0.0.1', user='root', pa

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

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

  • Python使用pymysql模块操作mysql增删改查实例分析

    本文实例讲述了Python使用pymysql模块操作mysql增删改查.分享给大家供大家参考,具体如下: # -*- coding:utf-8 -*- import pymysql user = input('请输入用户名:') pwd = input('请输入密码:') # 1.连接 conn = pymysql.connect(host='127.0.0.1', port=3306, user='root', password='123', db='t1', charset='utf8')

  • Python使用pymongo模块操作MongoDB的方法示例

    本文实例讲述了Python使用pymongo模块操作MongoDB的方法.分享给大家供大家参考,具体如下: 通过pymongo实现python对Mongodb的操作. 具体看python代码 #!/usr/bin/python # coding=utf-8 #python实现对MongoDB的操作 #需要安装python2.pymongo.安装pymongo可能需要pip,logging打印日志 #改脚本主要功能就是每5秒改一次mongodb中存储的ip,5秒后再改回来 import pymon

  • python使用pymysql模块操作MySQL

    目录 实例一:插入数据 实例二:获取某个表全部数据 实例三:根据cName模糊搜索 实例一:插入数据 import pymysql import tkinter as tk conn = pymysql.connect(host='localhost', user='root', passwd='root', db='okzl', charset='utf8') master = tk.Tk() master.title("插入供应商信息") master.geometry('350x

  • Python使用xlwt模块操作Excel的方法详解

    本文实例讲述了Python使用xlwt模块操作Excel的方法.分享给大家供大家参考,具体如下: 部分摘自官网文档. 该模块安装很简单 $ pip install xlwt 先来个简单的例子: #!/usr/bin/python #coding=utf-8 # ============================================================================== # # Filename: demo.py # Description: exc

  • Python使用ConfigParser模块操作配置文件的方法

    本文实例讲述了Python使用ConfigParser模块操作配置文件的方法.分享给大家供大家参考,具体如下: 一.简介 用于生成和修改常见配置文档,当前模块的名称在 python 3.x 版本中变更为 configparser. 二.配置文件格式 [DEFAULT] ServerAliveInterval = 45 Compression = yes CompressionLevel = 9 ForwardX11 = yes [bitbucket.org] User = hg [topsecr

  • Python基于xlrd模块操作Excel的方法示例

    本文实例讲述了Python基于xlrd模块操作Excel的方法.分享给大家供大家参考,具体如下: 一.使用xlrd读取excel 1.xlrd的安装: pip install xlrd==0.9.4 2.基本操作示例: #coding: utf-8 import xlrd #导入xlrd模块 xlsfile=r"D:\workspace\host.xls" #获得excel的book对象 book = xlrd.open_workbook(filename=None, file_con

  • python解析xml文件操作实例

    本文实例讲述了python解析xml文件操作的实现方法.分享给大家供大家参考.具体方法如下: xml文件内容如下: <?xml version="1.0" ?> <!--Simple xml document__chapter 8--> <book> <title> sample xml thing </title> <author> <name> <first> ma </first

  • Python使用cx_Oracle模块操作Oracle数据库详解

    本文实例讲述了Python使用cx_Oracle模块操作Oracle数据库.分享给大家供大家参考,具体如下: ORACLE_SID参数,这个参数是操作系统中用到的,它是描述我们要默认连接的数据库实例,对于一个机器上有多个实例的情况下,要修改后才能通过 conn / as sysdba连接,因为这里用到了默认的实例名. 简而言之,打个比方,你的名字叫小明,但是你有很多外号.你父母叫你小明,但是朋友都叫你的外号. 这里你的父母就是oracle实例,小明就是sid,service name就是你的外号

随机推荐