devo una query SQL che va come questo:Posso eseguire una query parametrizzata contenente la funzione geometria?
$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();
sto ottenendo questo errore:
'PDOException' with message 'SQLSTATE[23000]: Integrity constraint violation: 1048 Column 'latlng' cannot be null'
La colonna latlng
è di tipo point NOT NULL
. Poiché l'inserto funziona per quanto segue, perché dovrebbe essere inserito uno NULL
per quanto sopra?
"INSERT INTO Places (name, latlng)
VALUES (?, GeomFromText('POINT(".$_POST['lat']." ".$_POST['lng'].")'))"
Quindi, la mia domanda è, posso fare una query con parametri contenente una funzione geometria? Se é cosi, come? Se no, perché?
La mia ipotesi è che si deve alimentarlo l'intero ' '$ lat, $ lon'' come un valore, ma Posso sbagliare –
@Pekka, ma perché non funziona nel primo caso? –
@Pekka, ho provato, ma non funziona. –