无法在Python/Django中执行包含非拉丁字符的查询

2024-04-18 10:10:00 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图用Python/Django执行一个查询,但最终结果是ProgrammingError。我的脚本如下所示:

#--coding: utf-8
...
import pyodbc
...
def testquery(request):
    cnx = pyodbc.connect("DRIVER=FreeTDS;SERVER=192.168.0.1;PORT=1433;DATABASE=mydatabase;UID=sa;PWD=password;TDS_Version=7.0;ClientCharset=UTF8;")
    cursor = cnx.cursor()
    cursor.execute("SELECT * FROM sys_Атрибут")
    ...

如您所见,表名包含非拉丁字符。如果我改为查询另一个名称为拉丁语的表,那么就可以了。你知道吗

我也试过这个:

cursor.execute("SELECT * FROM ?",tablename)

还有这个:

cursor.execute("SELECT * FROM %s" % tablename)

但没有效果。你知道吗


Tags: djangofromimport脚本executedefselectcursor