Tornado的纯python MySQL驱动程序

Tornado-MySQL的Python项目详细描述


https://travis-ci.org/PyMySQL/Tornado-MySQL.svg?branch=tornado

这个包包含一个支持tornado的pymysql分支。

Example

example

#!/usr/bin/env python
from __future__ import print_function

from tornado import ioloop, gen
import tornado_mysql

@gen.coroutine
def main():
    conn = yield tornado_mysql.connect(host='127.0.0.1', port=3306, user='root', passwd='', db='mysql')
    cur = conn.cursor()
    yield cur.execute("SELECT Host,User FROM user")
    print(cur.description)
    for row in cur:
       print(row)
    cur.close()
    conn.close()

ioloop.IOLoop.current().run_sync(main)

example_pool

#!/usr/bin/env python
from __future__ import print_function

from tornado import ioloop, gen
from tornado_mysql import pools


pools.DEBUG = True


POOL = pools.Pool(
    dict(host='127.0.0.1', port=3306, user='root', passwd='', db='mysql'),
    max_idle_connections=1,
    max_recycle_sec=3)


@gen.coroutine
def worker(n):
    for i in range(10):
        t = 1
        print(n, "sleeping", t, "seconds")
        cur = yield POOL.execute("SELECT SLEEP(%s)", (t,))
        print(n, cur.fetchall())


@gen.coroutine
def main():
    workers = [worker(i) for i in range(10)]
    yield workers


ioloop.IOLoop.current().run_sync(main)
print(POOL._opened_conns)

Requirements

  • Python–以下之一:
  • MySQL服务器–以下之一:

Installation

上一个稳定版本在PyPI上可用,可以使用pip安装:

$ pip install Tornado-MySQL

Test Suite

如果要运行测试套件,请首先复制文件 .travis.databases.jsontornado_mysql/tests/databases.json并编辑新的 与MySQL配置匹配的文件:

$ cp .travis.databases.json tornado_mysql/tests/databases.json
$ $EDITOR tornado_mysql/tests/databases.json

要运行所有测试,请执行脚本runtests.py

$ python runtests.py

还提供了一个tox.ini文件,用于方便地在多个 python版本:

$ tox

License

PyMySQL是在MIT许可下发布的有关详细信息,请参见许可证。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
如何使用java向dropup html/css添加项目   如何从java中的向量向量打印   Java Maven库项目模板   java使用atmosphere api还是直接使用grizzly?   java JComponent仅部分显示   如何将动态值传递给自定义注释,以从Java数据进行映射。性质   java破解已实现方法的返回类型的最佳方法?   java Netbeans在JFrame Gui布局中覆盖图像   spring java仅向登录用户显示注销按钮   java如何对com进行身份验证。谷歌。云bigquery。带有服务帐户的BigQuery`   java禁止空字符串参数和抛出RuntimeException以阻止方法继续的利弊   java分析项目中的所有JAR以获取版本和许可证信息   Java,数据库为什么要分配一个新对象,而我们可以直接将它放入数据库