首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用单个PDO实例处理多个数据库?

问如何使用单个PDO实例处理多个数据库?
EN

Stack Overflow用户
提问于 2016-08-19 14:35:29
回答 1查看 280关注 0票数 1

我有点问题。我编写了一个PDO包装器,允许我对数据库执行查询。

现在我的应用程序是多租户的,这意味着我需要不同的数据库。数据源结构如下所示:

代码语言:javascript
复制
(1) Main Db 

(n) Tenant DB

因此,我有一个主数据库,在这里我拥有我所有的公司,以及n个数据库,其中我有登录凭据和用户公司信息。

当我的应用程序启动时,我会像这样调用我的db包装器:

代码语言:javascript
复制
$this->db = new Database('host', 'name', 'user', 'pass');

whis将在我的index.php中创建一个默认配置的实例。当我的用户登录时,我会将他数据库的连接设置存储到全局变量中。

现在的问题是,我需要在某一时刻使用我的config.php数据库凭据,所以我需要在每个模型方法中一次又一次地声明数据库对象。这种情况是痛苦的。

我能做些什么来解决这个问题?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-08-19 14:37:54

如果mysql用户可以访问这两个数据库,那么只需将数据库名添加到表名中:

代码语言:javascript
复制
SELECT id,name FROM database_name.users_table

如果您需要以不同的用户登录,则需要创建一个新的PDO实例。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39041703

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档