- 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;