когда я пытаюсь вставить что-то в мою базу данных PSQL, я получаю эту ошибку:
SQLSTATE [42601]: синтаксическая ошибка: 7 ОШИБКА: У INSERT больше выражений
чем целевые столбцы ЛИНИЯ 1: … преподаватель, модель, субмодель) ЗНАЧЕНИЯ ($ 1,
$ 2, $ 3, $ 4, $ 4, $ 5, $ 6) ^
Мой запрос отображается ниже, чтобы избежать проблемы с данными, я просто вставляю числовые строки. Так что для меня это выглядит очень странно.
Запрос:
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 = new PDO("pgsql:dbname=audahistory;host=localhost", "postgres", "");
$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', "1", PDO::PARAM_STR );
$stmt->bindValue( 'main_type', "2", PDO::PARAM_STR );
$stmt->bindValue( 'subtype_code', "3", PDO::PARAM_STR );
$stmt->bindValue( 'manufacturer', "4", PDO::PARAM_STR );
$stmt->bindValue( 'model', "5", PDO::PARAM_STR );
$stmt->bindValue( 'submodel', "6", PDO::PARAM_STR );
$stmt->execute();
}
catch( PDOException $e ) {
echo $e->getMessage();
exit;
}
}
Есть идеи, где может быть проблема?
Спасибо за совет
Задача ещё не решена.
Других решений пока нет …