需要帮助确定哪些 PDO 数据库驱动程序包含 information_schema db (PHP)
我正在尝试创建一个通用的扩展 PDO 类。其中一种方法从数据库模式中提取数据,如下所示。
SELECT column_name FROM information_schema.columns WHERE table_name = ?
我试图找出哪些 PDO 数据库驱动程序不适用于此类查询。我读到 information_schema 是一个 ansi 标准,但某些数据库系统尚未实现它。我只熟悉mysql,但需要使类敏捷,因为将来可能会使用其他数据库。
任何有关哪些数据库系统使用 information_schema 的信息将不胜感激。
I am trying to make a generic extended PDO class. One of the methods pulls data from the db schema like so.
SELECT column_name FROM information_schema.columns WHERE table_name = ?
I am trying to figure out which of PDO's database drivers will this type of query not work with. I have read that information_schema is an ansi standard, but some database systems have not implimented it. I am only familiar with mysql, but need to make the class agile because other dbs may be used in the future.
Any info about which database systems use information_schema would be greatly appreciated.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
这与 PDO 无关,与底层数据库引擎有关。
PostgreSQL,MySQL 和 MSSQL 支持
information_schema
。 Oracle 和 SQLite 没有,这意味着您需要特定于这些数据库引擎的代码来查询表信息。This has nothing to do with PDO and everything to do with the underlying database engine.
PostgreSQL, MySQL and MSSQL support
information_schema
. Oracle and SQLite don't, meaning you'd need code specific to those database engines to query table information.