sql >> データベース >  >> RDS >> Mysql

PDOStatement ::nextRowSet()は、WindowsのMySQL5.6.16で壊れています

    PDO ::nextRowset()でも同じ問題が発生しました。使用可能な行セットがなくなってもtrueが返されるため、fetchAll()を呼び出すと、例外HY000が発生します。 (PHP 5.5.12 Windows、Mysql 5.5.17 linuxでテスト済み)

    この問題の回避策は、行セットをフェッチする前に、メソッドPDO ::columnCount()を使用して列の数を確認することです。ゼロ以外の場合は、有効な行セットがあるため、PDO ::fetchAll()を呼び出すことができます。

    PDO ::nextRowset()がtrueを報告した場合でも、columnCount()は次の行セットに移動する前に列数を報告します。

    例:

    while ($objQuery->columnCount()) {
        $tab[] = $objQuery->fetchAll(\PDO::FETCH_ASSOC);
        $objQuery->nextRowset();
    }
    


    1. フロートの小数点以下の桁数を取得します(小数部ありまたはなし)

    2. 複数行の挿入内でLAST_INSERT_ID()を使用する

    3. AJAXを使用してWebページをリロードせずにWebページを更新するにはどうすればよいですか?

    4. 原因:org.postgresql.util.PSQLException:致命的:ユーザー管理者のパスワード認証に失敗しました