php - PDO MySQL 查询独立于数据库结构

标签 php mysql sql database pdo

要使用 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/

相关文章:

javascript - 单击链接后刷新 div _blank

mysql - 从多个列中获取两个最大值

sql - 如何在SQL中显示两个给定日期之间的所有日期

MySQL多表SELECT

php - 如何在 PHP 中获取 JavaScript 变量值

php - Magento:如何在 Controller 中动态更改默认模板

javascript - JQuery在重新加载时将事件类添加到父类

java - Hibernate 更新同一列

MySQL - 对列中逗号分隔的字符串进行排序

sql - SQL Server 中的嵌套表类型