概要:torndb是一个轻量级的基于MySQLdb封装的一个模块,其是tornado框架的一部分。其项目主页为:https://github.com/bdarnell/torndb 。从tornado3.0版本以后,其已经作为一个独立模块发行了。可以通过easy_install 或pip的方式直接安装。
1、连接数据库
# 创建连接 import torndb # 数据库、账号、密码、时区 db = torndb.Connection("192.168.1.134:3306",'Jefrey',user='lzl',password='123456',time_zone='+8:00')
补充:
默认字符集UTF8,没必要在加上 charset = "utf8"
另外需要注意的是其默认时区为time_zone='+0:00'
这个可以手动在连接的时候指定为东8区
2、创建数据表
# 创建 create='create table blog(id int,content text)' db.execute(create)
3、插入数据
①、execute
# 插入execute # execute='insert into blog(id,content)values(%d,"%s")'%(7,'Jefrey5') # db.execute(execute)
②、insert
# 单条insert insert = 'insert into blog(id,content)values(%s,%s)' db.insert(insert,10,'Jefrey10')
③、insertmany
# insertmany insertmany = 'insert into blog(id,content)values(%s,%s)' db.insertmany(insert,[[11,'Jefrey11'],[12,'Jefrey12']])
4、查询数据
①、query查询
# Query查询 sql = 'SELECT * FROM blog WHERE content = %s AND id < %s' # 查询到一条数据时为列表 database = db.query(sql, 'Jefrey', 11) # [{'content': u'Jefrey', 'id': 1L}] # 查询到多条数据为也为列表 database5 = db.query(sql, 'Jefrey5', 11) # [{'content': u'Jefrey5', 'id': 5L}, {'content': u'Jefrey5', 'id': 8L}, {'content': u'Jefrey5', 'id': 7L}] # 查询数据不存在时为空列表 database10 = db.query(sql, 'Jefrey10', 11) # []
②、get查询
# Get查询 sql = 'SELECT * FROM blog WHERE content = %s AND id < %s' # 查询到一条数据时为字典 database = db.get(sql, 'Jefrey', 11) # {'content': u'Jefrey', 'id': 1L} # 查询到多条数据时报错 database5 = db.get(sql, 'Jefrey5', 11) # Exception: Multiple rows returned for Database.get() query # 查询数据不存在时为None database10 = db.get(sql, 'Jefrey10', 11) # None