que tienen una consulta SQL que dice así:¿Puedo hacer una consulta parametrizada que contenga la función de geometría?
$stmt = $dbh->prepare("INSERT INTO Places (name, latlng)
VALUES (?, GeomFromText('POINT(? ?)'))");
$stmt->bindValue(1, $_POST['name']);
$stmt->bindValue(2, $_POST['lat']);
$stmt->bindValue(3, $_POST['lng']);
$stmt->execute();
que han estado recibiendo este error:
'PDOException' with message 'SQLSTATE[23000]: Integrity constraint violation: 1048 Column 'latlng' cannot be null'
La columna es de tipo latlng
point NOT NULL
. Dado que la inserción funciona para lo siguiente, ¿por qué se debe insertar un NULL
para lo anterior?
"INSERT INTO Places (name, latlng)
VALUES (?, GeomFromText('POINT(".$_POST['lat']." ".$_POST['lng'].")'))"
Entonces, mi pregunta es, ¿puedo hacer una consulta parametrizada que contenga una función de geometría? ¿Si es así, cómo? Si no, ¿por qué?
Mi conjetura sería que usted tiene que darle de comer toda la ' 'lat $, $ lon'' como un valor, pero Puedo estar equivocado –
@Pekka, pero ¿por qué no funciona en el primer caso? –
@Pekka, lo intenté, pero no funciona. –