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()函数中常用的连接参数有以下几种:
Connection对象的重要方法:
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模块操作数据库的方法,希望对大家有所帮助!
本文向大家介绍python 3.6 +pyMysql 操作mysql数据库(实例讲解),包括了python 3.6 +pyMysql 操作mysql数据库(实例讲解)的使用技巧和注意事项,需要的朋友参考一下 版本信息:python:3.6 mysql:5.7 pyMysql:0.7.11 测试代码: 测试表: 执行结果: 以上这篇python 3.6 +pyMysql 操作mysql数据库(实
本文向大家介绍pymysql模块的操作实例,包括了pymysql模块的操作实例的使用技巧和注意事项,需要的朋友参考一下 pymysql 模块! pymysql模块时一个第三方模块!需要下载: pymysql的基本使用: 我们可以通过python导入模块来连接数据库,进行登陆注册功能,在使用时sql会遇到注入问题 sql注入问题 利用特殊符号和注释语法 巧妙的绕过真正的sql校验,是用户数据不安全
本文向大家介绍Python使用cx_Oracle模块操作Oracle数据库详解,包括了Python使用cx_Oracle模块操作Oracle数据库详解的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了Python使用cx_Oracle模块操作Oracle数据库。分享给大家供大家参考,具体如下: ORACLE_SID参数,这个参数是操作系统中用到的,它是描述我们要默认连接的数据库实例,对于一个
本文向大家介绍Python操作mongodb数据库的方法详解,包括了Python操作mongodb数据库的方法详解的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了Python操作mongodb数据库的方法。分享给大家供大家参考,具体如下: 安装pymongo 下载pymongo: https://pypi.python.org/packages/82/26/f45f95841de5164c
本文向大家介绍Python数据分析库pandas基本操作方法,包括了Python数据分析库pandas基本操作方法的使用技巧和注意事项,需要的朋友参考一下 pandas是什么? 是它吗? 。。。。很显然pandas没有这个家伙那么可爱。。。。 我们来看看pandas的官网是怎么来定义自己的: pandas is an open source, easy-to-use data structures
本文向大家介绍Python bsddb模块操作Berkeley DB数据库介绍,包括了Python bsddb模块操作Berkeley DB数据库介绍的使用技巧和注意事项,需要的朋友参考一下 bsddb模块是用来操作bdb的模块,bdb是著名的Berkeley DB,它的性能非常好,mysql的存储后端引擎都支持bdb的方式。这里简单介绍一些关于bsddb的使用方法。 bdb不同于一般的关系数据库