Settings | Sign in | Sign up

There are currently 67 posts.

今天我來系統地學習一下PDO

Floor 31 巨大八爪鱼 5/30/15 21:22
$sql = "SELECT * FROM WiFiHotSpots WHERE ItemName = ? AND ItemID > 2";
非變量可以直接寫入數據庫
Floor 32 巨大八爪鱼 5/30/15 21:22

回復:31樓

非變量可以直接寫入SQL語句

Floor 33 巨大八爪鱼 5/30/15 21:28
不過這樣的話,就無法得到生成的SQL字符串了。。。
Floor 34 巨大八爪鱼 5/30/15 21:30
$address = "Delaware St";

$sql = "SELECT * FROM WiFiHotSpots WHERE ItemName = ? AND ItemID < 15 AND ItemAddress = ?";
$stmt = $dbh->prepare($sql);
$stmt->execute(array($name, $address));
$row = $stmt->fetch();
echo "(" . $row["ItemLatitude"] . ", " . $row["ItemLongitude"] . ")";
Floor 35 巨大八爪鱼 5/30/15 21:38
判斷記錄集是否為空:
if (!$stmt->rowCount()) {
  echo "記錄集為空";
}
Floor 36 巨大八爪鱼 5/30/15 21:39
$stmt->rowCount()可以直接當布爾值用。
Floor 37 巨大八爪鱼 5/30/15 21:41
原始方法:
if (mysql_num_rows($rs) == 0) {
echo "記錄集為空";
}
Floor 38 巨大八爪鱼 5/30/15 21:46
回復:33樓
http://php.net/manual/en/pdostatement.debugdumpparams.php
debugDumpParams可以用來輸出SQL及其參數,但是無法產生目標SQL。

Floor 39 巨大八爪鱼 5/30/15 21:49
Error SQL query:

SELECT * FROM WiFiHotSpots WHERE ItemName = ? AND ItemID < 15 AND ItemAddress = ? LIMIT 0, 25
MySQL said:
#1064 - 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 '? AND ItemID < 15 AND ItemAddress = ?
LIMIT 0, 25' at line 1
Floor 40 巨大八爪鱼 5/30/15 22:07
bindColumn的用法:
<?php
include_once("conn.php");

$sql = "SELECT * FROM WiFiHotSpots";
$stmt = $dbh->prepare($sql);
$stmt->execute();

$stmt->bindColumn("ItemSuburb", $suburb);
foreach ($stmt as $row) {
    echo $suburb . "<br>";
    // $suburb is equivalent to $row["ItemSuburb"]
}
?>

Content converter:

Reply the post
Content:
User: You are currently anonymous.
Captcha:
Unclear? Try another one.