Python 连接到unicode编码的sqlite3数据库路径

Python 连接到unicode编码的sqlite3数据库路径,python,unicode,sqlite,Python,Unicode,Sqlite,当我尝试使用unicode路径字符串连接到Python中的sqlite3数据库时,整个路径字符串被误解为数据库名称: $ python Python 2.7.6 (default, Nov 12 2015, 06:14:37) [GCC 4.4.7 20120313 (Red Hat 4.4.7-11)] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> im

当我尝试使用unicode路径字符串连接到Python中的sqlite3数据库时,整个路径字符串被误解为数据库名称:

$ python
Python 2.7.6 (default, Nov 12 2015, 06:14:37)
[GCC 4.4.7 20120313 (Red Hat 4.4.7-11)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import sqlite3
>>> conn = sqlite3.connect(u'my.db')
>>> exit()
$ ls -lt | head -n 2
total 554000
-rw-r--r-- 1 shahin users         0 Nov 14 01:11 ????????b
我无法在其他机器上复制它。当我:

  • 将ascii路径传递给sqlite3。连接,或
  • 将unicode路径传递给Python的
    open
为什么
sqlite3
库将我的路径误解为一个无意义的文件名

$ sqlite3 --version
3.8.8 2015-01-16 12:08:06 7d68a42face3ab14ed88407d4331872f5b243fdf

这是一个SQLite C库问题。Python Unicode对象获取并传递到,这需要UTF-8。这不是Python的问题,而是SQLite C库的问题。Python Unicode对象获取并传递到,这需要UTF-8。因此,这不是Python的问题。