Python SQLalchemy 包...如果数据库在 AWS 上,它肯定是 Redshift 吗?

Posted

技术标签:

【中文标题】Python SQLalchemy 包...如果数据库在 AWS 上,它肯定是 Redshift 吗?【英文标题】:Python SQLalchemy package... if a database is on AWS, is it definitely Redshift? 【发布时间】:2020-01-07 02:48:20 【问题描述】:

我是 Python 新手。我从 DataCamp 找到了一个示例数据库,我可以轻松地连接到 Microsoft 的 Azure Data Studio(我使用的是 Mac,所以这是最接近 SSMS 的东西) 我尝试使用 SQLalchemy 包在 Python 中进行连接,因为这是他们在 DataCamp 的 Python 教程中教你使用的包,但我无法理解如何去做,因为它看起来不像它那么容易在他们的教程中。 问题是,看起来我需要选择一种特定的“方言”才能正确连接,具体取决于它是哪种 SQL 服务器。由于该数据库位于 amazonaws.com,因此可以安全地假设这是一个 Redshift 数据库吗?如果没有,我怎么知道要下载哪种方言? 我在底部粘贴了数据库信息。

https://docs.sqlalchemy.org/en/13/core/engines.html

数据库:ec2-52-14-205-70.us-east-2.compute.amazonaws.com

(来源:https://www.datacamp.com/community/tutorials/sql-tableau)

【问题讨论】:

你不会(通常)下载方言;它们带有 SQLA 包。不过,您确实需要下载 DB-API 驱动程序,例如 pymssql。 【参考方案1】:

如果数据库在 AWS 上,一定是 Redshift 吗?

没有。亚马逊提供wide range 的数据库服务。但是,它位于 *.amazonaws.com 域名上这一事实并不能告诉您它是否是其中之一(它可能是一个虚拟机,Linux 或 Windows,运行一些您从未听说过的数据库)。

在这种情况下,您可以参考 datacamp 文章:

服务器名称:ec2-52-14-205-70.us-east-2.compute.amazonaws.com

身份验证:SQL Server 身份验证

根据身份验证类型,这是一个 Microsoft SQL Server 数据库。我已经通过使用 Microsoft SQL Server Managemnt Studio(及其“Microsoft SQL Server Express(64 位)”v14.0.1000.169)连接到它来验证这一点。

【讨论】:

以上是关于Python SQLalchemy 包...如果数据库在 AWS 上,它肯定是 Redshift 吗?的主要内容,如果未能解决你的问题,请参考以下文章

sqlalchemy在pythonweb中开发的使用(基于tornado的基础上)

SQLAlchemy(包含有Flask-Migrate知识点)

Python SQLAlchemy --1

Flask 学习-98.Flask-SQLAlchemy limit() 限制返回条数

python如何用sqlalchemy操作数据库

Flask - SQLAlchemy