pythonmysql使用教程(Python异步操作MySQL示例使用aiomysql)
类别:脚本大全 浏览量:1059
时间:2021-09-29 03:09:16 pythonmysql使用教程
Python异步操作MySQL示例使用aiomysql本文实例讲述了python异步操作mysql。分享给大家供大家参考,具体如下:
安装aiomysql
依赖
- python3.4+
- asyncio
- pymysql
安装
|
pip install aiomysql |
应用
基本的异步连接connection
|
import asyncio from aiomysql import create_pool loop = asyncio.get_event_loop() async def go(): async with create_pool(host = '127.0.0.1' , port = 3306 , user = 'root' , password = '', db = 'mysql' , loop = loop) as pool: async with pool.get() as conn: async with conn.cursor() as cur: await cur.execute( "select 42;" ) value = await cur.fetchone() print (value) loop.run_until_complete(go()) |
异步的连接池 pool
|
import asyncio import aiomysql async def test_example(loop): pool = await aiomysql.create_pool(host = '127.0.0.1' , port = 3306 , user = 'root' , password = '', db = 'mysql' , loop = loop) async with pool.acquire() as conn: async with conn.cursor() as cur: await cur.execute( "select 42;" ) print (cur.description) (r,) = await cur.fetchone() assert r = = 42 pool.close() await pool.wait_closed() loop = asyncio.get_event_loop() loop.run_until_complete(test_example(loop)) |
对象关系映射sqlalchemy - object relationship mapping
可以随意定义表结构,轻松调用查询、插入等操作方法。
|
import asyncio import sqlalchemy as sa from aiomysql.sa import create_engine metadata = sa.metadata() tbl = sa.table( 'tbl' , metadata, sa.column( 'id' , sa.integer, primary_key = true), sa.column( 'val' , sa.string( 255 ))) async def go(loop): engine = await create_engine(user = 'root' , db = 'test_pymysql' , host = '127.0.0.1' , password = '', loop = loop) async with engine.acquire() as conn: await conn.execute(tbl.insert().values(val = 'abc' )) await conn.execute(tbl.insert().values(val = 'xyz' )) async for row in conn.execute(tbl.select()): print (row. id , row.val) engine.close() await engine.wait_closed() loop = asyncio.get_event_loop() loop.run_until_complete(go(loop)) |
希望本文所述对大家python程序设计有所帮助。
原文链接:https://blog.csdn.net/ydyang1126/article/details/78226701
您可能感兴趣
- pythonturtle库画图代码(用Python中的turtle模块画图两只小羊方法)
- pythonmatplotlib怎么画区域(python matplotlib实现双Y轴的实例)
- python最基本的编程工具(5款Python程序员高频使用开发工具推荐)
- pythonrequest包设置编码(解决python3中的requests解析中文页面出现乱码问题)
- pythonopencv自定义阈值算法(理想高通滤波实现Python opencv示例)
- python操作pandas(详解Python学习之安装pandas)
- python pandas dataframe 查询(Python实现从SQL型数据库读写dataframe型数据的方法基于pandas)
- pythonsocket教程(python3利用Socket实现通信的方法示例)
- python3的循环怎么用(对Python3 goto 语句的使用方法详解)
- pythonflask怎么设置(python flask安装和命令详解)
- python怎么进行参数传递(在Python中如何传递任意数量的实参的示例代码)
- python远程下发shell指令(Python实现堡垒机模式下远程命令执行操作示例)
- python 暗弱目标提取(Python提取频域特征知识点浅析)
- python3和python区别(Python2与Python3的区别实例总结)
- python批量注册(python实现批量注册网站用户的示例)
- python字典键对应的值(Python 互换字典的键值对实例)
- 越难春卷(越难春卷皮怎么用)
- 休闲VS新古典 办公家居简约设计(办公家居简约设计)
- 15个新成 园 位置公布 深圳龙岗2022年共建花园建设又有大动作(15个新成园位置公布)
- 记者手记 书记带我去 巡街(记者手记书记带我去)
- 富士胶片集团将向土耳其东南部地震灾民捐赠5000万日元 | 美通社(富士胶片集团将向土耳其东南部地震灾民捐赠5000万日元)
- 二次创业 的富士胶片,在进博会上首次展示完成转型后的全线医疗产品(二次创业的富士胶片)
热门推荐
排行榜
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9