python treeview 如何在python程序中查看sqlite3某数据库中的表名?
如何在python程序中查看sqlite3某数据库中的表名?
sqlite3数据库里表的信息存储在了一个名为sqlite_master的表中
因此可以通过这条语句来查看数据库中所有表的名称
SELECT name FROM sqlite_master WHERE type="table"
下面是Python的用法
con = sqlite3.connect("database.db")cursor = con.cursor()cursor.execute("SELECT name FROM sqlite_master WHERE type="table"")print(cursor.fetchall())
Python和SQLite问题,怎么解决?
python编码如果把中文数据存储至sqlite数据库某一字段中,再通过查询语句取出并进行相关的字符串操作时,经常会出现错误提示,类似于UnicodeDecodeError,提示某一类型编码不能转换。出现这个问题的原因是因为python默认使用unicode处理sqlite3的TEXT类型(varchar类型也是如此,因为在sqlite中varchar其实就是TEXT)。python把中文存入数据库时使用了类似于GBK这样的编码,取出时会尝试把TEXT类型数据转换成unicode,从而出现错误。由此导致的另一个不容易发现的错误是存储在数据库中的中文进行了base64之类的编码,在python中取出时不会存在错误,但是再进行base64解码,并与sqlite3中取出的其它text字段进行字符串拼接等处理,就出现编码转换错误,很难发现问题原因,可以把其它text字段进行如"aaa".encode("gbk")编码成GBK码解决,但不提倡这种方法,更好方法如下:解决方法是python连接sqlite数据库后进行如下设置:conn = sqlite3.connection(“……”)conn.text_factory = str另外为了python代码中硬编码的中文字符串不出现问题,除了在源码开始添加# -*- coding:utf-8 -*- 还要设置python源码的编码为utf-8import sysreload(sys)sys.setdefaultencode("utf8")
python treeview python sqlite3教程 编程语言python怎么读
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。