我正在迁移一个现有的Python程序,它使用SQLAlchemy,但几乎完全是通过使用SQLAlchemy引擎来在Pandas数据框中使用(例如,pandas to_sql)。目前创建引擎时使用的连接字符串是另一个数据库的连接字符串(即MySQL),并且访问数据库(类似于Postgres架构)很容易。我应该如何在给定的引擎中最好地指定架构(而不仅仅是包含它们的Postgres数据库)?
编辑:有人似乎将这个问题标记为重复。但实际上不是这样。我不是要通过使用Sessions来自动生成查询语句;我是想创建连接字符串以便在Pandas的to_sql函数中使用SQLAlchemy引擎。
编辑:有人似乎将这个问题标记为重复。但实际上不是这样。我不是要通过使用Sessions来自动生成查询语句;我是想创建连接字符串以便在Pandas的to_sql函数中使用SQLAlchemy引擎。
DataFrame.to_sql()
将使用“默认”schema
作为关键字参数。你的数据库-模式类比是误导性的。模式将对象分隔到数据库中的命名空间中,并且用户可以访问DB中不同模式中的所有对象(给定权限)。 - Ilja Everiläto_sql()
函数中的con
参数。这样,在调用之间可以获得连接池等好处。如果使用引擎实例而不是连接字符串,则链接的重复实际上是有效的,因为您可以例如实现设置搜索路径的连接事件侦听器。 - Ilja Everilä