|
41樓 巨大八爪鱼
2015-5-30 22:08
bindColumn將一個字段綁定到一個php變量中,也就是每次循環自動執行: $suburb = $row["ItemSuburb"]
|
|
42樓 巨大八爪鱼
2015-5-30 22:12
$stmt->bindColumn("ItemSuburb", $suburb, PDO::PARAM_STR); 相當於$suburb = (string)$row["ItemSuburb"];
|
|
43樓 巨大八爪鱼
2015-5-30 22:21
回復:33樓 為了排查SQL的錯誤,可以使用errorInfo直接獲取MySQL輸出的錯誤信息,不用再把輸出的SQL語句複製到PMA中執行了。 比如: $sql = "SELECT * AFROM WiFiHotSpots"; $dbh->query($sql); $error = $dbh->errorInfo(); echo $error[2]; 輸出: You have an error in your SQL syntax; check the manual that corresponds
to your MariaDB server version for the right syntax to use near 'AFROM
WiFiHotSpots' at line 1
|
|
44樓 巨大八爪鱼
2015-5-30 22:22
回復:43樓 這樣我們就可以直接看出這個SQL語句中的AFROM出問題了
|
|
45樓 巨大八爪鱼
2015-5-30 22:25
|
|
46樓 巨大八爪鱼
2015-5-30 22:27
方法 bindParam() 和 bindValue() 非常相似。 唯一的区别就是前者使用一个PHP变量绑定参数,而后者使用一个值。 所以使用bindParam是第二个参数只能用变量名,而不能用变量值,而bindValue至可以使用具体值。 http://www.360doc.com/content/12/0703/16/10337467_222033042.shtml
|
|
47樓 張樹人
2015-5-30 22:29
回復:46樓 所以對於一些固定的值,可以用bindValue
|
|
48樓 巨大八爪鱼
2015-5-30 22:29
fetch();和mysql_fetch_array();一樣 但fetchAll();返回一個二維數組,可以獲取所有行。
|
|
49樓 巨大八爪鱼
2015-5-30 22:31
以後要排查sql的錯誤直接用errorInfo,不要再把SQL語句複製到PMA里執行了。而且也沒有辦法獲得最終的SQL語句。
|
|
50樓 張樹人
2015-5-30 23:00
回復:47樓 這樣和直接將value填在SQL字元串中相比,更容易分別value和SQL語句
|