是否有某种方法可以构建一个PHP应用程序,可以连接到MySQL或Oracle DB,而无需在数据库与MySQL / Oracle之间进行更改时更改数据库连接和查询功能?
我最初的想法是'不'。当然,对于不同的数据库类型,PHP DB连接需要不同。但是,可能有一些功能没有听说过以不同方式连接到DB的尝试。
任何想法都会很棒。我有一个PHP应用程序连接到我的机器上的MySQL数据库,但由于公司的政策,他们只提供Oracle数据库,因此我将不得不改变一些事情。
谢谢。
答案 0 :(得分:6)
是。它被称为数据库抽象层。看看PDO,它与PHP捆绑在一起。
答案 1 :(得分:1)
使用PDO。您需要确保您的查询在两个数据库系统中都能正常工作。
答案 2 :(得分:1)
您可以查看Doctrine项目提供的数据库抽象层:
http://www.doctrine-project.org/
它有许多不同数据库的驱动程序,包括MySQL和Oracle:
http://www.doctrine-project.org/docs/dbal/2.1/en/reference/configuration.html#driver
此外,Doctrine托管了一个Object Relational Mapper,可以完全从代码中抽象出数据库内部。它可以与它们的抽象层结合使用。如果你想使用它,这取决于你。