gevent sqlalchemy async access mysql

1.安装mysql-connector

2.db = create_engine('mysql+mysqlconnector://root:liukesun@localhost/testdb')

gevent_sqlalchemy_test.py

#!/usr/bin/python

import gevent
from gevent import monkey
 
# patches stdlib (including socket and ssl modules) to cooperate with other greenlets
monkey.patch_all()
 
import usertable

def get_user_data():
    print "starting get_user_data"
    usertable.get_data()
    print "end get_user_data."
 
#jobs = [gevent.spawn(print_head, url) for url in urls]
jobs = [gevent.spawn(get_user_data), gevent.spawn(get_user_data)]
 
gevent.joinall(jobs)

usertable.py

#!/usr/bin/env python

import mysql.connector
mysql.connector.MySQLConnection.get_characterset_info=lambda cls:cls.charset
from sqlalchemy import *

db = create_engine('mysql+mysqlconnector://root:liukesun@localhost/testdb', echo=False)
metadata = MetaData(db)

users = Table('users', metadata,
              Column('user_id', Integer, primary_key=True),
              Column('name', String(40)),
              Column('age', Integer),
              Column('password', String(40)),
              )

def get_data():
    s = users.select()
    rs = s.execute()
    for row in rs:
        print row

if __name__ == '__main__':
    print "begin..."
    get_data()
    print "end."




评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值