我有一个情况。我正在删除默认数据库连接并动态连接到不同的数据库。如果找到,我想删除新数据库。如果新连接中存在新数据库,则一切正常。但是,如果新连接中的数据库丢失,则抛出异常,我无法捕获。我想知道新连接中的数据库是否遗漏并向客户端显示错误,指出“您尝试删除的数据库已被删除”
这是我的代码:
ConnectionManager::getDataSource('default')->disconnect();
ConnectionManager::drop('default');
try {
ConnectionManager::create('Default', $this->config);
$db = ConnectionManager::getDataSource('default');
} catch (MissingDatabaseException $e) {
die($e->getMessage());
}
在上面的代码中,当我尝试连接$ this-> config中传递的新设置时,它在ConnectionManager :: create()方法中有一个例外。
如何在尝试创建连接或捕获异常(最终在create()方法中将其发送到浏览器之前)检查数据库是否存在。非常感谢任何帮助。