2012-11-27 13 views
6

PDO::bindValue() da açık veri türleri kullanmanın amacı nedir? Bir SQL sözdizimi hatası yükselen tırnak içinde değerini içine alın önlerPDO :: bindValue() öğesinde açık veri türleri kullanmanın amacı nedir?

SELECT * FROM ... LIMIT :intValues 

gibi bir şey gerektiğinde

aşağıdaki formlardan birinde Örneğin bir SQLSTATE[HY000]: General error: 1366 Incorrect integer value: 'a'

$pdos->bindValue(':Value_For_An_Int_Col', 'a');//default arg for the third and opt par is PDO::PARAM_INT 

$pdos->bindValue(':Value_For_An_Int_Col', 'a', PDO::PARAM_INT); 

cevap

3

olacağını

+0

Bu yanıt yanlış. Tırnakları bağlarken bile tırnaklara gerek yoktur. –

+0

pdo, belirtilen parametreleri girecek ve limit çalışmaz – dynamic

+0

Sadece emin olmak için test ettim. Hayır, alıntılanan parametreleri eklemez. Bu bir sürüm sorunu olabilir mi? Geçmişte haklı olabilirsin, ama öyle düşünmüyorum. Daha ayrıntılı olmak için: PDO :: bindValue() içindeki veri türlerini, dize ve tamsayı parametrelerine göre düzgün çalışacak şekilde açıkça belirtmeniz gerekmez. –