在数据库中输入特殊字符

时间:2013-02-17 08:48:53

标签: python sqlite special-characters

我正在使用python扫描我的系统并将文件名输入sqlite3数据库。

其中一个文件的名称中碰巧有一个特殊字符,并且在插入记录时会产生错误。这是文件名。

 a¿.mp3

这是查询

self.cursor.execute("INSERT INTO TRACKS VALUES (?)", i)

由于特殊字符,我无法在utf-8中对其进行编码。

我是否可以使用其他编码将此数据添加到数据库中?

2 个答案:

答案 0 :(得分:0)

您可以尝试utf-16编码,或在特殊字符周围添加'。

答案 1 :(得分:0)

您是否正在使用os.walk?如果这样做,请将目录名称不是作为裸字符串传递,而是作为unicode对象传递,例如os.walk(u'/some/path')以获取unicode中的所有文件。然后你可以使用filename.encode('utf-8')

以utf-8(如果utf-8不够,则为utf-16)对它们进行编码