我有一些模型存储在 SQLServer 上,可以使用 django-pyodbc 访问。在服务器上,我们的代码运行良好,但在我们的开发机器上,我们开始看到模型在返回的字段上带有一个空格字符,而该字段应该是一个空字符串。
当我使用 isql 命令时,这是我得到的输出:
发展:
SQL> SELECT MyField FROM MyTable WHERE MyField = ' '
SQLRowCount returns 62
SQL> SELECT MyField FROM MyTable WHERE MyField = ''
SQLRowCount returns 0
服务器:
SQL> SELECT MyField FROM MyTable WHERE MyField = ' '
SQLRowCount returns 62
SQL> SELECT MyField FROM MyTable WHERE MyField = ''
SQLRowCount returns 62
我在服务器上的查询中添加了多少空格并不重要,我总是得到相同数量的返回结果。
我们的开发机器正在从同一个数据库中读取并具有相同版本的 django-pyodbc,但它们正在与不同的 DB 用户连接。我们的桌面运行带有 python-odbc 2.1.7-1build1 的 Ubuntu 11.10,我们的服务器有带有 pyodbc-2.1.8 的 Gentoo(不是我的决定)。
有没有人遇到过这个错误?知道可能是什么原因吗?