php mysqli mysqli_query() mysqli_real_query()
1039 ワード
2016年11月26日15:22:27土曜日
シーン:
PHP mysqlからデータを読み込む
1.全てのデータを一度に読み取ってPHPに戻す
2.ループごとに記録を1つだけ読み込む
データ量が小さいときは1つ目の方法、データ量が多いときは2つ目の方法が必要です
2つ目の方法:
php::mysqlで拡張するとmysqlという関数があります.unbuffered_query
php::mysqli拡張を使用すると、次の2つの等価な使用方法があります.
1) mysqli::query('select * from ....',
2) mysqli::real_query('select * from ...'); 結合関数mysqli::use_result()を併用
説明:
mysqli::query('...',
mysqli::query('...',
内
mysqli::query()が返すデータのタイプはクエリーの結果セットです.
mysqli::real_query()は、ブール値true/falseがプログラムに今回のmysqlクエリが成功したかどうかを通知し(簡単に理解できる)、成功したら、結果セットを取得する関数を呼び出す
注意:
結果セットが1つずつ戻ってくるからこそ、結果を順番に読み取るしかなく、オフセット量をランダムに指定して1つのレコードを取得することも、レコードの総数を取得することもできないなど
シーン:
PHP mysqlからデータを読み込む
1.全てのデータを一度に読み取ってPHPに戻す
2.ループごとに記録を1つだけ読み込む
データ量が小さいときは1つ目の方法、データ量が多いときは2つ目の方法が必要です
2つ目の方法:
php::mysqlで拡張するとmysqlという関数があります.unbuffered_query
php::mysqli拡張を使用すると、次の2つの等価な使用方法があります.
1) mysqli::query('select * from ....',
MYSQLI_USE_RESULT
) 2) mysqli::real_query('select * from ...'); 結合関数mysqli::use_result()を併用
説明:
mysqli::query('...',
MYSQLI_STORE_RESULT
)はmysqli::real_に等しいquery() + mysqli::store_result()/MYSQLI_STORE_RESULT
はデフォルトで送信せずに、すべてのデータセットを一度に取得してPHPに返すことができます.mysqli::query('...',
MYSQLI_USE_RESULT
)はmysqli::real_に等しいquery() + mysqli::use_result()/PHPにレコードを返すたびに内
mysqli::query()が返すデータのタイプはクエリーの結果セットです.
mysqli::real_query()は、ブール値true/falseがプログラムに今回のmysqlクエリが成功したかどうかを通知し(簡単に理解できる)、成功したら、結果セットを取得する関数を呼び出す
注意:
結果セットが1つずつ戻ってくるからこそ、結果を順番に読み取るしかなく、オフセット量をランダムに指定して1つのレコードを取得することも、レコードの総数を取得することもできないなど