要使用 PDO 与 MySQL 数据库交互(假设命名占位符),需要了解一些数据库结构:
$db->("INSERT INTO table (firstname, lastname, age) value (:fn, :ln, :age)");
有没有一种方法可以在不了解这些知识的情况下使用带有命名占位符的准备好的语句,从而允许更改表结构而不需要更改代码。或者,有没有办法查询数据库的表结构?
最佳答案
解决方案是观察您的商业模式:
select
column_name,
column_type
from
information_schema.columns
where
table_schema = 'yourschema'
and table_name = 'yourtable';
解析此结果,并使用 php 动态构建插入查询。利用 column_type
信息,您可以在绑定(bind)值时映射 PDO::XXX 数据类型。
关于php - PDO MySQL 查询独立于数据库结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19756609/