问题标签 [django-pyodbc]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
800 浏览

python - 在 python manage.py dbshel​​l / loaddata 中使用 django-pyodbc 时遇到问题

我无法通过 python manage.py dbshel​​l / loaddata 连接到 SQL Server 数据库。

我在 Ubuntu 上设置了 FreeTDS、unixODBC、pyodbc (3.0.7) 和 django-pyodbc: https ://github.com/lionheart/django-pyodbc/

我可以成功运行 syncdb 和 South 迁移。但是,当我尝试运行 dbshel​​l 或 loaddata 时,我收到此错误:

我可以使用 isql 和 tsql 从命令行进行连接。关于我所缺少的任何想法?

0 投票
1 回答
8445 浏览

python - 异常值: ('08001', '[08001] [unixODBC][FreeTDS][SQL Server]无法连接到数据源 (0) (SQLDriverConnect)')

我正在使用 pyodbc 库从运行在 ubuntu Vm 上的 python djanog Web 应用程序连接到 Windows 上的远程 sql server 实例。

我有一个数据库连接类,如下所示,它在我尝试创建对象连接的那一行中断(我一直在尝试许多 connectionStrings);

当我运行服务器时,我收到标题中描述的错误。

我的配置文件如下;

当我在终端中输入 odbcinst -j 时;

使用 isql 和 dsn、用户和密码从命令行成功连接。

我真的不知道该怎么办,我已经在这个圈子里转了一天多。一些帮助将不胜感激!

0 投票
0 回答
168 浏览

python - SQL UPDATE 不会通过 django-pyodbc 影响任何行

我为 Python 2.7(Ubuntu 14.04、unixODBC、FreeTDS)安装了 django-pyodbc,并且我正在尝试更新我作为测试创建的 SQL Server 数据库。

除了一个不影响任何行的特定 UPDATE 语句之外,一切都运行良好。通过 isql 执行的相同查询会影响 258 行(与我从 Windows 运行查询的结果相同)。顺便说一句,一个简单的 UPDATE 语句可以工作(例如:UPDATE mytable SET x=1)。有问题的查询基于 2 个 JOIN(一个是 LEFT JOIN)。这里是:

有谁知道这样的事情怎么可能?问候,帕特里克

编辑:我的 DATABASE 设置已经包含 autocommit 参数。无论如何,这里是:

}

0 投票
0 回答
717 浏览

python - 是否可以将 django-pyodbc 与 iSeries Access ODBC 驱动程序一起使用?

我正在尝试使用标准的 IBM i Access ODBC 驱动程序让 Django-pyodbc 与 IBM i 上的 DB2 一起工作。我知道 IBM 支持 Django DB 实现,但这需要 DB2 Connect 产品,这(对我们来说)非常昂贵,而包含的 Access ODBC 驱动程序是免费提供的。

我看到一个关于 django-pyodbc 与 iSeries ODBC 的问题,暗示这是可能的,但我没有找到让它工作的方法: https ://stackoverflow.com/questions/25066866/django-inspectdb-on- db2-数据库

因此,我的第一个问题是;有没有人成功地让这个设置工作?如果是,你能分享一下你是如何做到的吗?

谢谢,理查德

0 投票
0 回答
547 浏览

django - django connection.cursor.execute() 返回无

在 python shell(python 2.7、django 1.6、Windows 8)中,我试图对我在 SQL Server 2008 中的一个表(engine=django_mssql)执行一个简单的查询:

connection.cursor.execute("SELECT * from mymodel_mytable")

结果是无。由于简单的 get 连接就可以工作:

Mymodel.objects.get(pk=1)

返回预期的行。如果我在另一个 shell(Ubuntu,engine=django_pyodbc)中做同样的事情,它会返回预期的 pyodbc_Cursor 对象,我可以在该对象上获取行。

我哪里错了?请帮忙!问候,帕特里克

编辑:我的 DATABASES 设置中的字典是:

0 投票
1 回答
336 浏览

django - dumpdata 的 Django-pyodbc mssql 错误

我正在尝试sudo ./manage.py dumpdata从我的 django 项目中对 mssql db 执行 a,但不断得到:

我已经完成了https://code.google.com/p/django-pyodbc/wiki/FreeTDS中提到的配置,并且我得到了所有测试工作(FreeTDS 和 ODBC)。

这是我当前的settings.py数据库配置:

当我尝试运行时,./manage.py test我得到:

我试图删除该DATABASES = {...}部分,只留下DATABASE_XXX但得到:

我目前在客户端使用:

  • Ubuntu 14.04.1 LTS
  • Python 2.7.6
  • Django 1.7.8
  • pyodbc==3.0.10
  • django-pyodbc==0.2.8

我到达的服务器是:

  • Microsoft Server 2003 运行:MSSQL 2005

这里是/etc/odbcinst.ini

双重检查路径,所有文件都存在

这是我的/etc/odbc.ini

这是我的/etc/freetds/freetds.conf

0 投票
2 回答
1924 浏览

sql-server - django exclude 的性能问题

我有一个 Django 1.8 应用程序,我正在使用一个 MsSQL 数据库,以 pyodbc 作为数据库后端(使用“django-pyodbc-azure”模块)。

我有以下型号:

我需要查询会话模型,并且我想排除一些具有特定设备值的记录。所以我发出以下查询:

badDevices 是一个包含大约 60 项的设备 ID 的预填充列表。

此查询大约需要 1.5 秒才能完成。如果我从查询中删除排除项,大约需要 250 毫秒。

我为这个查询集打印了生成的 sql,并在我的数据库客户端中进行了尝试。在那里,两个版本都在大约 250 毫秒内执行。

这是生成的 SQL:

因此,在数据库级别使用排除似乎不会影响查询性能,但在 django 中,如果我添加排除部分,查询运行速度会慢 6 倍。这可能是什么原因造成的?

0 投票
1 回答
2623 浏览

python - Django MSSQL 数据库后端与 Django PYODBC

我是 Python 和 Django 的新手,并且仍在尝试找出适合我的开发的最佳环境。据我所知,有 2 个选项可用于建立与 MSSQL 数据库的连接,它们是:

Django MSSQL 数据库后端:http ://django-mssql.readthedocs.org/en/latest/

Django PYODBC:https ://github.com/lionheart/django-pyodbc/

我想问的是这两个选项之间的区别及其优缺点。它们是否彼此不同,尤其是在性能和​​稳定性方面?

(我只在stackoverflow中找到了下面的链接,但它非常有限且过时,所以我想问另一个问题。抱歉,如果有最近我还没有看到的链接。)

django-pyodbc vs django-mssql

谢谢你。

0 投票
2 回答
4812 浏览

python - 尝试使用 django-pyodbc-azure 连接到 MSSQL 导致找不到文件错误

我认为我的问题或多或少是Trying to query SQL Server from django running on Linux - Can't open lib '/path/to/libtdsodbc.so'的重复,但那里的答案完全没有用。

我正在使用以下东西:

  1. Ubuntu 15.04
  2. Python3
  3. Django 1.9(通过 pip3 安装)
  4. freetds-dev 0.91-6build1通过 apt-get 安装
  5. django-pyodbc-azure/django-pyodbc通过 pip3 安装
  6. 微软 SQL 2012

尝试连接时,python3 manage.py inspectdb我得到以下堆栈跟踪:

我编辑了 base.py 以打印出它正在使用的连接字符串,即:

我的数据库 settings.py 如下所示:

我的假设是DRIVER连接 str 的部分应该是 odbc 驱动程序的可执行文件的完全限定路径,并且现在它设置为“FreeTDS”,它不作为文件存在。那么我的问题是:

  1. 如果我的假设是正确的,我该如何更改驱动程序的值?
  2. 如果我的假设不正确,实际上是什么错误,我该如何解决?
0 投票
1 回答
2984 浏览

sql-server - Django+sql 服务器 - 没有名为 sql_server.pyodbc.base 的模块

我想SQL Server用作Django.

我安装 pyodbc、django-pyodbc、django-pyodbc-azure

settings.py我替换数据库

如果我运行 python manage.pysyncdb 错误:

我使用 Visual Studio + Python 2.7