Mysql
 sql >> база данни >  >> RDS >> Mysql

Подготвените изявления на PHP PDO и обвързването на стойността дава грешка в невалиден номер на параметър

Опитахте ли да предадете целия израз като стойност за свързване?

$sql = 'INSERT INTO '.POLYGON_TABLE.' (user_id, polygon, polygon_type) VALUES (:userId,  PolygonFromText(:polygonArea), :polygonType)';


$sth = $this->pdo->prepare($sql);
$area = sprintf("POLYGON((%s))", $polygon->getPolygonAsText()); 
$sth->bindValue(':userId', $polygon->getUserId(), \PDO::PARAM_INT);
$sth->bindValue(':polygonArea', $area, \PDO::PARAM_STR);
$sth->bindValue(':polygonType', $polygon->getPolygonType(), \PDO::PARAM_STR);


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Не може да се отстрани полето в таблицата MariaDB/MySql с ВЪНШЕН КЛЮЧ

  2. MySQL UTF8 експортиране на Windows - импортиране на Linux

  3. вземете следващия и предишния идентификационен запис в базата данни на Yii

  4. Grails 3 - Gradle зависимости Mysql конектор

  5. Как да разбера коя транзакция причинява състояние на заключване на метаданните на таблицата?