python - Sage 50 的 Pyodbc 到 SQLAlchemy 连接字符串
问题描述
我正在尝试将 pyodbc 连接切换到 sqlalchemy 引擎。我的工作 pyodbc 连接是:
con = pyodbc.connect('DSN=SageLine50v23;UID=#####;PWD=#####;')
这是我尝试过的。
con = create_engine('pyodbc://'+username+':'+password+'@'+url+'/'+db_name+'?driver=SageLine50v23')
我正在尝试连接到我的 Sage 50 会计数据,但不知道如何构建连接字符串。这是我下载 odbc 驱动程序https://my.sage.co.uk/public/help/askarticle.aspx?articleid=19136的地方。
我使用此网站(正在运行)https://www.cdata.com/kb/tech/sageuk-odbc-python-linux.rst获得了有关 pyodbc 连接的一些原始帮助,但想使用 SQLAlchemy 进行连接熊猫。有任何想法吗?假设问题出在这部分pyodbc://
解决方案
根据这个线程Sage 50 使用 MySQL 来存储它的数据。但是,Sage 也提供了自己的 ODBC 驱动程序,它可能使用或不使用与 MySQL 本身相同的 SQL 方言。
SQLAlchemy 需要知道使用哪种 SQL 方言,因此您可以尝试使用mysql+pyodbc://...
连接 URI 的前缀。如果这不起作用(可能是因为“Sage SQL”与“MySQL SQL”太不同了),那么您可能想询问 Sage 支持人员是否知道他们产品的 SQLAlchemy 方言。
推荐阅读
- php - 为什么 MySQL 的 tinyint 0 被威胁为真实
- xslt - xsl:尝试在 xsl:when/following-sibling 语句中使用“not”
- android - Android API 24+ 上的 Firemonkey 标准 TakePhotoFromCamera 操作出错
- javascript - React,js 语法错误 400 请求错误
- jakarta-ee - jboss-cli.sh 在 centos 7 上不起作用
- python - Anaconda Navigator 或 Jupyter Notebook 都不会打开
- playframework - play framework 2.5.9 启动时logback Filter的classNotFound异常
- javascript - __WEBPACK_IMPORTED_MODULE_0_jquery___default(...)(...).metisMenu 错误
- sql - SQL Server:查找公司/部门 ID 的最新生效日期
- vba - VBA 在 Word doc 中的特定位置插入空白 ContentControlPicture