【发布时间】:2015-03-02 17:58:41
【问题描述】:
我最近才开始使用 PDO 和 Prepared Statements 并了解它们如何正常工作,但是我现在想要支持多个数据库并且对它们的工作方式有一些疑问。
据我了解,如果您在 PHP 中使用 PDO,那么它将支持许多不同的数据库类型。但是我想了解它是如何工作的。
例如,如果我这样做:
$data = array( 'name' => 'Cathy', 'addr' => '123 fake st', 'city' => 'fakesville' );
$sql = $db->("INSERT INTO folks (name, addr, city) value (:name, :addr, :city)");
$sql->execute($data);
我知道只要它受支持,它就可以在您想要的任何数据库上运行?
如果是这样,它是如何工作的?是不是把 SQL 语句变成了每个数据库引擎本身对应的语法?
如果上述情况属实,有什么我应该注意的不受支持的吗?我想我读到你不应该使用特定于数据库的函数?
如果这是真的,如果需要,你会怎么做?您是否需要为要支持的每个数据库编写 SQL 并使用它们各自的功能?
MySQL 中常用的显然是COUNT 和SUM;这将是我主要编写的数据库语言。
【问题讨论】:
标签: php mysql database pdo prepared-statement