python从sqllite中取中文乱码有关问题

python从sqllite中取中文乱码问题
Python code
#!python
# encoding: gbk

import sqlite3 as sqlite


conn = sqlite.connect('test.db')
conn.text_factory = str
c = conn.cursor()
c.execute("select * from tb")
all = c.fetchall()
for data in all:
    print data[0]

我在这个库中加入中文可以正常查询输出中文,但是我换了一个数据库,数据类型都没有变。代码只是改动了数据库连接和查询语句。但是确出现乱码。
C:\Python26>python sql.txt
中国
中国
美国
飞机
这个是这个库里面正常的输出

改动了以后就输出

C:\Python26>python sql1.txt

数据内容有些变化,但是都是汉字。
求解决


------解决方案--------------------
估计是两个数据库中指定的编码不一样. 可以用"pragma encoding"查看数据库的编码,象这样:

~/shizi/ sqlite3 shizi.db 
sqlite> pragma encoding;
UTF-8
sqlite>