Python操作MySQL -即pymysql/SQLAlchemy用法

本节介绍Python对于MySQL的一些操作用法

模块:pymysql(等同于MySQLdb)

说明:pymysql与MySQLdb模块的使用基本相同,学会pymysql,使用MySQLdb也就不是问题

安装API

pip install PyMySQL

操作

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# auth : pangguoping
import pymysql

# 创建连接
conn = pymysql.connect(host=‘192.168.1.103‘, port=3306, user=‘root‘, passwd=‘123456‘, db=‘test‘)
# 开启自动提交SQL,如果这里不设置,以后的命令需要执行conn.commit()来提交执行,否则都在内存中
conn.autocommit(True)

# 创建游标
cur = conn.cursor()

# 执行普通SQL,并返回受影响行数
effect_row = cur.execute("insert into t1 values (1, ‘Boss‘)")
print(effect_row)  # out:1
#
# 执行带占位符的SQL,并返回受影响行数
effect_row = cur.execute("insert into t1 values (2,‘%s‘)" % "xiaodi")
print(effect_row)  # out:1
#
# 执行多行数据的SQL,并返回受影响行数
effect_row = cur.executemany("insert into t1(id,name) values (%s, %s)", [(3, ‘zhubajie‘), (4, ‘sunwukong‘)])
print(effect_row)  # out: 2

# 获取最新自增ID,注意:如果该表的列是非自增类型的,则获取到的数值为0
id = cur.lastrowid
print(id)  # out :4
cur.execute(‘select * from t1‘)

# 获取第一行数据
row_1 = cur.fetchone()
print(row_1)  # out:  (1, ‘Boss‘)
# 获取前n行数据
row_2 = cur.fetchmany(3)
print(row_2)  # out: ((2, ‘xiaodi‘), (3, ‘zhubajie‘), (4, ‘sunwukong‘))
# 获取所有数据
row_3 = cur.fetchall()
print(row_3)  # out: ((1, ‘Boss‘), (2, ‘xiaodi‘), (3, ‘zhubajie‘), (4, ‘sunwukong‘))
# 提交
conn.commit()

# 关闭游标
cur.close()
# 关闭连接
conn.close()
    注:在fetch数据时按照顺序进行,可以使用cursor.scroll(num,mode)来移动游标位置,如:

    cur.scroll(1,mode=‘relative‘) # 相对当前位置移动,数字1 也可以为负数,只是移动方向不同而已
    cur.scroll(2,mode=‘absolute‘) # 相对绝对位置移动

扩展:通过pymysql获取Dict数据类型

  从上边的案例可以看出,pymysql获取的结果,是以元组的形式输出,对于不了解表结构的人来说,无疑不知道每个元素对应的列。

  因此,如果想要或者字典类型的数据,需要创建游标的时候,设置返回的数据集类型,即:

# 游标设置为字典类型
cur = conn.cursor(cursor=pymysql.cursors.DictCursor)
时间: 2024-07-30 13:45:12

Python操作MySQL -即pymysql/SQLAlchemy用法的相关文章

python操作mysql(pymysql + sqlalchemy)

pymysql pymsql是Python中操作MySQL的模块,其使用方法和MySQLdb几乎相同. 下载安装 pip3 install pymysql 使用操作 1.执行sql #!/usr/bin/env python # -*- coding:utf-8 -*- import pymysql # 创建连接 conn = pymysql.connect(host='127.0.0.1', port=3306, user='root', passwd='123', db='t1') # 创建

python成长之路【第十三篇】:Python操作MySQL之pymysql

对于Python操作MySQL主要使用两种方式: 原生模块 pymsql ORM框架 SQLAchemy pymsql pymsql是Python中操作MySQL的模块,其使用方法和MySQLdb几乎相同. 下载安装 pip3 install pymysql 使用操作 1.执行SQL #!/usr/bin/env python # -*- coding:utf-8 -*- import pymysql # 创建连接 conn = pymysql.connect(host='127.0.0.1',

Python自动化运维之18、Python操作 MySQL、pymysql、SQLAchemy

一.MySQL 1.概述 什么是数据库 ? 答:数据的仓库,和Excel表中的行和列是差不多的,只是有各种约束和不同数据类型的表格 什么是 MySQL.Oracle.SQLite.Access.MS SQL Server等 ? 答:他们均是一个软件,都有两个主要的功能: a. 将数据保存到文件或内存 b. 接收特定的命令,然后对文件进行相应的操作 PS:如果有了以上软件,无须自己再去创建文件和文件夹,而是直接传递 命令 给上述软件,让其来进行文件操作,他们统称为数据库管理系统(DBMS,Data

Python操作MySQL:pymysql模块

连接MySQL有两个模块:mysqldb和pymysql,第一个在Python3.x上不能用,所以我们学pymysql import pymysql # 创建连接 conn = pymysql.connect(host='127.0.0.1', port=3306, user='root', password='mysql8', db='mysqltest') # 创建游标(光标) cursor = conn.cursor() # 执行SQL,返回影响行数 effect_rows = curso

mysql数据库----python操作mysql ------pymysql和SQLAchemy

本篇对于Python操作MySQL主要使用两种方式: 原生模块 pymsql ORM框架 SQLAchemy 一.pymysql pymsql是Python中操作MySQL的模块,其使用方法和MySQLdb几乎相同. 下载安装 pip3 install pymysql 使用操作 1.执行SQL 1 #!/usr/bin/env python 2 # -*- coding:utf-8 -*- 3 import pymysql 4 5 # 创建连接 6 conn = pymysql.connect(

【转】Python中操作mysql的pymysql模块详解

Python中操作mysql的pymysql模块详解 前言 pymsql是Python中操作MySQL的模块,其使用方法和MySQLdb几乎相同.但目前pymysql支持python3.x而后者不支持3.x版本. 本文测试python版本:2.7.11.mysql版本:5.6.24 一.安装 1 pip3 install pymysql 二.使用操作 1.执行SQL 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25

Python中操作mysql的pymysql模块详解

Python中操作mysql的pymysql模块详解 前言 pymsql是Python中操作MySQL的模块,pymysql支持python3.x. 一.安装 pip install pymysql 二.使用操作 1.执行SQL #!/usr/bin/env pytho # -*- coding:utf-8 -*- importpymysql # 创建连接 conn =pymysql.connect(host='127.0.0.1', port=3306, user='root', passwd

exist 存在 Python操作mysql pymysql sql注入问题 # 39

0.补充 exist 存在 了解.py 1 """""" 2 """ 3 '''exist''' 4 EXIST 关键字表示存在 5 在使用EXIST 关键字时 , 6 7 内层查询语句不返回 查询的记录, 8 而是返回一个真假值 ,True|False 9 10 当返回True时,外层语句将进行查询, 11 当返回值为False 外层查询语句不进行查询 12 13 select * from emp where e

pymysql:python操作mysql

pymysql:python操作mysql 安装 >: pip3 install pymysql 增删改查 # 选取操作的模块 pymysql # pymysql连接数据库的必要参数:主机.端口.用户名.密码.数据库 # 注:pymysql不能提供创建数据库的服务,数据库要提前创建 import pymysql # 1)建立数据库连接对象 conn # 2)通过 conn 创建操作sql的 游标对象 # 3)编写sql交给 cursor 执行 # 4)如果是查询,通过 cursor对象 获取结果