0
我与特定的问题斗争,我需要插入数据到不同结构的多个表。插入到所有列而不是指定每个[MYSQL或PSQL]
大气压我有我的剧本是这样的:
public function insertToPsql($manufacturer_code, $main_type, $subtype_code, $manufacturer, $model, $submodel)
{
try {
$con = new PDO(PSQL_DB_HOST, PSQL_DB_HOST, PSQL_DB_HOST);
$con->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$sql = "INSERT INTO car_type(manufacturer_code, main_type, subtype_code, manufacturer, model, submodel) VALUES(:manufacturer_code, :main_type, :subtype_code, :manufacturer, :model, :submodel)";
$stmt = $con->prepare($sql);
$stmt->bindValue('manufacturer_code', $manufacturer_code, PDO::PARAM_STR);
$stmt->bindValue('main_type', $main_type, PDO::PARAM_STR);
$stmt->bindValue('subtype_code', $subtype_code, PDO::PARAM_STR);
$stmt->bindValue('manufacturer', $manufacturer, PDO::PARAM_STR);
$stmt->bindValue('model', $model, PDO::PARAM_STR);
$stmt->bindValue('submodel', $submodel, PDO::PARAM_STR);
$stmt->execute();
}
catch(PDOException $e) {
echo $e->getMessage();
exit;
}
}
的事情是,这是不是最好的办法,如果我需要随时修改它为每个表(很多我的表有大约40列)。
好东西是,我总是插入所有的人。有什么办法如何插入到所有列和不指定数据,但只是给它一个数组或对象的所有数据?
喜欢的东西:
$sql = "INSERT INTO car_type VALUES(:$data)";
您在使用MySQL或PostgreSQL?你有两个标签。 – Barmar