导航:首页 > 编程语言 > pythonsqlite3中文

pythonsqlite3中文

发布时间:2023-07-03 18:18:22

‘壹’ python3读取word文件到sqlite

大象关进冰箱需要两步走:

  1. 获取word文件内容
  2. 将获取的内容拆分为对应的业务字段并写入sqlite中

首先我这有个文档,里面包含了驾照考试科四试题。

‘贰’ Python2.7.5下从SQLite3中查询中文,请求帮忙!

这个你确定没有报别的错误么, cu.execute("select * from table where username=%s"%name)#找某个表中的姓名为XX的用户 %s两边要单引号的吧

‘叁’ 最近学python和bottle框架,用sqlite3,网页中文显示乱码,咋办捏

这个不是乱码,是unicode过的中文,你直接显示就是看到的中文了

‘肆’ 如何在python程序中查看sqlite3某数据库中的表名

sqlite3数据库里表的信息存储在了一个名为sqlite_master的表中

因此可以通过这条语句来查看数据库中所有表的名称

SELECT name FROM sqlite_master WHERE type='table';

下面是Python的用法

con=sqlite3.connect('database.db')
cursor=con.cursor()
cursor.execute("SELECTnameFROMsqlite_masterWHEREtype='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-8
import sys
reload(sys)
sys.setdefaultencode('utf8')

阅读全文

与pythonsqlite3中文相关的资料

热点内容
程序员网上接单能挣多少钱 浏览:175
稀有传奇手游源码 浏览:547
u盘里的cd驱动加密是什么 浏览:414
遗传算法编码长度 浏览:974
pe装服务器需要注意什么 浏览:319
foreach计数php 浏览:525
php自连接 浏览:296
程序员被喷了怎么办 浏览:708
android消息数 浏览:261
为什么在服务器里输不了指令 浏览:29
程序员那么可爱前女友剧情介绍 浏览:104
centosjava环境变量配置 浏览:555
服务器主板被锁如何恢复 浏览:132
xpc语言编程软件 浏览:823
光遇安卓怎么解限制 浏览:302
元气骑士老版源码 浏览:106
助眠解压音频小姐姐口腔音 浏览:236
sql加密身份证号解码 浏览:164
解压玩法视频 浏览:466
苹果xls如何设置加密 浏览:208