【问题标题】:Connect to Sybase database from Django从 Django 连接到 Sybase 数据库
【发布时间】:2022-01-19 17:15:27
【问题描述】:

我尝试使用sqlanydjangoDjango 连接到Sybase 数据库,但是 我有stuck。一个回答说

sqlany-django is no longer maintained; it was last updated in May 2016.

连接到Sybase 数据库的其他可能性是什么?

操作系统Ubuntu 18.04

django2.2.4

【问题讨论】:

    标签: django sybase


    【解决方案1】:

    Sybase 不再维护,Django 不支持它。我建议使用supported databases 之一:

    • PostgreSQL
    • MariaDB
    • MySQL
    • 甲骨文
    • SQLite

    我个人建议使用PostgreSQL - 我认为它是最先进的数据库。如果你使用它,我会推荐使用版本 13,因为版本 14 仍然是新的,我认为它还没有被 Django 官方支持。使用以前的主要版本始终是一个好习惯。同样对于 Django,我建议在其初始发布后大约 4 到 6 个月升级到最新的主要版本。所以今天,这意味着使用 Django 3.2(最新的次要版本,目前是 3.2.11)。

    您可以使用django-environ 来定义您在设置中使用的数据库。

    【讨论】:

      【解决方案2】:

      您可以使用freetds module。 GitHub 仓库 5 天前活跃,旨在为 sybase 和 MSQL Server 提供支持。

      我将它与 MSQL 一起使用

      您可以从there 下载它,并按照this link(Sybase python 模块网站)上的说明进行安装

      然后您可以使用these steps 测试您的安装

      您也可以尝试不同的 Django 版本。

      如果这没有显示任何错误,并且 Django 仍然无法连接到您的数据库,您可以尝试编辑 Django 的源文件,以便不会引发 ImproperlyConfigured 异常(真的很危险,请备份您的DB) 或将 Sybase 迁移到支持的数据库。

      【讨论】:

      • freetds 抛出此错误File "/home/pd/pd_videowebapp/env/lib/python3.6/site-packages/django_pyodbc/base.py", line 98, in <module> raise ImproperlyConfigured("Django %d.%d is not supported." % DjangoVersion[:2]) django.core.exceptions.ImproperlyConfigured: Django 2.2 is not supported.
      • 这些是我的设置'sybase_database': { 'ENGINE': 'django_pyodbc', 'NAME': 'db_name', 'USER': 'user_name', 'PASSWORD': 'password', 'HOST': '10.60.1.18', 'PORT': '2638', 'OPTIONS': { 'driver': 'FreeTDS', } }
      • 你还在坚持使用特定版本的 Django 吗?你试过these steps 来检查你的安装吗?
      • 我无法在 Linux 上安装它,因为 this 链接已失效。有关更多信息,我正在使用 Python 3 和 pip。
      【解决方案3】:

      您可以使用 pyodbc。 要安装它。

      点安装pyodbc

      import pyodbc
      cnxn = pyodbc.connect(‘DRIVER={Devart ODBC Driver for ASE};Server=myserver;Port=myport;Database=mydatabase;User ID=myuserid;Password=mypassword;String Types=Unicode’)
      

      供参考:- https://medium.com/@sharma.jayant1992/best-way-to-connect-python-with-sybase-database-76445713efaf

      【讨论】:

        猜你喜欢
        • 2017-06-12
        • 1970-01-01
        • 2016-06-04
        • 2017-09-01
        • 1970-01-01
        • 2011-08-22
        • 2015-07-08
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多