aiomysql:

import aiomysql
import asyncio

async def aiomysql_test():
    loop = asyncio.get_event_loop()
    # 第一种连接方法
    pool = await aiomysql.create_pool(host='127.0.0.1', port=3306, user='root', password='root', db='cfda', loop=loop,
                                      charset='utf8', autocommit=True)  # autocommit=True 不用在写pool.commit  每次默认自动提交

    async with pool.acquire() as conn:
        async with conn.cursor() as cursor:
            insert_sql = 'insert into async_test_async(title) values("{}")'.format(title)
            print('insert_sql:', insert_sql)
            # 插入数据
            await cursor.execute("insert into async_test_async(title) values('{}')".format(title))

            # 查询数据
            await cursor.execute("select * from async_test_async")
            data = await cursor.fetchall()
            print("data:", data)

            # 更新数据
            await cursor.execute("update async_test_async set title='{}' where id={}".format('update', 10168))

            # 删除数据
            await cursor.execute("delete from async_test_async where id={}".format(10174))

    # 第二种连接方法
    pool = await aiomysql.connect(host='127.0.0.1', port=3306, user='root', password='root', db='cfda', loop=loop,
                                  charset='utf8', autocommit=True)
    cursor = await pool.cursor()
    insert_sql = 'insert into async_test_async(title) values("{}")'.format(title)
    print('insert_sql:', insert_sql)
    # 插入数据
    await cursor.execute("insert into async_test_async(title) values('{}')".format(title))

    # 查询数据
    await cursor.execute("select * from async_test_async")
    data = await cursor.fetchall()
    print("data:", data)

    # 更新数据
    await cursor.execute("update async_test_async set title='{}' where id={}".format('update', 10168))

    # 删除数据
    await cursor.execute("delete from async_test_async where id={}".format(10174))

    cursor.close()
    pool.close()

if __name__ == "__main__":
    loop = asyncio.get_event_loop()
    loop.run_until_complete(aiomysql_test())

  

aiomysql的更多相关文章

  1. python链家网高并发异步爬虫asyncio+aiohttp+aiomysql异步存入数据

    python链家网二手房异步IO爬虫,使用asyncio.aiohttp和aiomysql 很多小伙伴初学python时都会学习到爬虫,刚入门时会使用requests.urllib这些同步的库进行单线 ...

  2. 2.aiomysql实现对数据库异步读取

    有一个库叫做aiomysql,这是一个基于asyncio和pymysql的库.至于为什么可以在tornado中使用,是因为高版本tornado的底层使用了asyncio. import asyncio ...

  3. aiomysql inserting operation failed !

    emotions: those days,i am using aiomysql(python3.5) to acess my database .But a 'strange' problem ma ...

  4. aiomysql实现对数据库异步读取

    有一个库叫做aiomysql,这是一个基于asyncio和pymysql的库.至于为什么可以在tornado中使用,是因为高版本tornado的底层使用了asyncio. import asyncio ...

  5. python学习6 web开发

    wsgi自带,用语构建简单服务器 例子 from wsgiref.simple_server import make_server def index(env, res): res('200 ok', ...

  6. [python] ORM 第一次注释

    不懂的东西还太多,就当是自己监督自己吧 #!/usr/bin/env python3 # -*- coding: utf-8 -*- __author__ = 'Michael Liao' impor ...

  7. 浅谈python web框架中的orm设计

    看了一下廖雪峰的那个web框架,其实就是封装了web.py,请求使用异步并将aiomysql做为MySQL数据库提供了异步IO的驱动,前端部分则整合了jinja.其中最难的应该是orm部分了. 下面是 ...

  8. Python3 ORM hacking

    #!/usr/bin/env python3 # -*- coding: utf- -*- # # Python3 ORM hacking # 说明: # 之前分析了一个Python2 ORM的源代码 ...

  9. Python-Blog1-搭建开发环境

    注:本系列是根据廖雪峰python实战过程,详情可见(https://www.liaoxuefeng.com/) 环境准备 Python 版本:Python 3.X,查看python版本python ...

随机推荐

  1. appium---App页面滑动

    我们操作app的过程中都会进行页面滑动,那么这个过程通过python怎么实现呢? 如何滑动 大家都非常的清楚我们手动在app上是如何滑动的,然后自动化只是模仿了手工的方法去实现,我们通过一个图来分析 ...

  2. element-ui中的hover 光标移入某一个具体的td 有hover效果

    <template> <div> <el-table :data="tableData" style="width: 100%"& ...

  3. 【Excel】对比两列值

  4. 给用户提供就医帮助的安卓APP

    经过我们的小组的成员讨论,我们确定了我们小组的项目,即是一款给用户提供就医帮助的安卓APP. 项目计划及功能:计划两个月内团队成员共同开发完成此款APP,此款APP提供预约挂号,名医名院咨询, 就医导 ...

  5. fastdfs使用总结

    参考:https://www.cnblogs.com/chiangchou/p/fastdfs.html   说明:这篇博客是为了记录我在安装和使用FastDFS分布式文件系统时遇到的问题和解决方法, ...

  6. python做中学(六)os.getcwd() 的用法

    概述 os.getcwd() 方法用于返回当前工作目录. 语法 getcwd()方法语法格式如下: os.getcwd() 参数 无 返回值 返回当前进程的工作目录. 实例 以下实例演示了 getcw ...

  7. pytest框架之pytest-html报告生成

    一.关于安装 pytest-html属于pytest的一个插件,使用它需要先安装 pip install pytest-html pytest可以生成多种样式的结果: 生成JunitXML格式的测试报 ...

  8. 使用configparser模块进行封装,构造配置文件处理器

    from configparser import ConfigParser class HandleConfig: ''' 定义一个配置文件处理类 ''' def __init__(self, fil ...

  9. Linux 安装 MySQL 出现 Could NOT find Curses

    通过源码安装 MySQL 数据库,下载了 mysql-5.5.24 的版本,在使用 cmake 时产生了报错,如下: CMake Error at cmake/readline.cmake: (MES ...

  10. 百度API车牌识别——Restful方式

    源码下载地址:https://download.csdn.net/download/redhat588/11798294 Delphi xe 10.3.2 for windows 7 环境编译通过! ...