0
我是新來使用PDO和準備好的聲明中,所以如果我這樣做是公然錯了,請讓我知道:)我準備好的SQL語句有什麼問題?
我有以下代碼:
$stmt = $this->_dbh->prepare('(SELECT folder_id, "y" AS "has_access", access_type FROM groups_users AS gu LEFT JOIN folders_groups AS fg ON gu.group_id = fg.group_id WHERE user_id = :user_id)
UNION
(SELECT folder_id, has_access, access_type FROM folders_users WHERE user_id = :user_id AND has_access = :yes)');
$stmt->bindValue(':user_id', $this->_user_id, PDO::PARAM_INT);
$stmt->bindValue(':yes', self::YES, PDO::PARAM_STR);
$stmt->execute();
$folders = $stmt->fetch(PDO::FETCH_ASSOC);
,如果我做的:
print_r($this->_dbh->errorInfo());
print_r($folders);
$文件夾是FALSE和我errorInfo中()返回:
Array ([0] => 00000 [1] => [2] =>)
從我的理解來看,這意味着沒有錯誤。我嘗試用值替換我的:user_id和:yes,我沒有收到錯誤。結果是空的,但當我期待一個空數組時,我的獲取調用仍然返回false(其中documentation表示失敗)。
感謝所有幫助:)
天哪darnit!它返回0這是正確的。感謝您的幫助,一旦8分鐘馬上結束,我會接受!有點尷尬......呃...... – Gazillion