- tornado是python的web框架,web程序开发中数据库操作是必须的。
安装:
tornado的官方文档中提供的说明比较少,而且提供的模块中未找到数据库方面的模块,难道没有针对数据库操作进行封装?百度查询了一下才发现,tornado在升级过程中把数据库模块独立出来了。
模块为torndb模块。模块git地址:https://github.com/bdarnell/torndb 官方文档地址:http://torndb.readthedocs.org/en/latest/_modules/torndb.html
安装方法:执行命令 pip install torndb ,但是这个命令默认读取的是pypi站的索引,但是其访问不是很稳定。所以这里可以采用豆瓣的pypi索引。命令如下:
pip install -i http://pypi.douban.com/simple/ torndb
所以以后pypi站索引无法访问的时候尝试利用豆瓣的pypi索引。
使用:
连接数据库
import torndb db=torndb.Connection(hostaddress,database name,user,password)
查询
查询有两种查询方式,一种为get,一种为query,get是得到一行数据。query是得到一列数据。get返回数据为封装好的dict,query得到的数据为封装好的list,单元为dict。
>>> a=db.get('select * from query where id=1') >>> a {'queryc': 'dac', 'id': 1}
>>> a=db.query('select * from query') >>> a [{'id': 2, 'queryc': 'isca'}, {'id': 1, 'queryc': 'dac'}]
执行sql语句
下面的命令是无返回参数的执行sql语句的方法。
string='dac' str='insert into query(id,queryc)values(%d,"%s")'%(1,string) db.execute(exe)
- MySQL命令行操作创建数据库和表的时候指定编码的命令
数据库
mysql> CREATE DATABASE IF NOT EXISTS my_db DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
数据表
mysql> CREATE TABLE my_table (name VARCHAR(20) NOT NULL) type=MyISAM DEFAULT CHARSET utf8;