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."