ホームページ >バックエンド開発 >PHPチュートリアル >パラメータ化された SELECT クエリとその後のデータ挿入に PDO を効率的に使用するにはどうすればよいですか?
パラメータ化された SELECT を使用した一意の ID の取得
一意の ID を取得するにはパラメータ化された SELECT クエリを使用してテーブルから ID を取得するには、次の手順に従います。手順:
$db = new PDO("..."); $statement = $db->prepare("SELECT id FROM some_table WHERE name = :name"); $statement->execute([':name' => "Jimbo"]); $row = $statement->fetch();
$row 変数には ID を持つ配列が含まれます。
取得した ID を使用したデータの挿入
挿入するには取得した ID を使用してデータを別のテーブルにコピーするには、次を使用しますコード:
$statement = $db->prepare("INSERT INTO some_other_table (some_id) VALUES (:some_id)"); $statement->execute([':some_id' => $row['id']]);
PDO 例外によるエラー処理
シームレスなエラー処理を行うには、エラー時に例外をスローするように PDO を構成します:
$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
準備されたものの再利用可能性ステートメント
ステートメントを準備すると、クエリのパフォーマンスが向上します。クエリを実行するたびに解析してコンパイルするのではなく、準備されたステートメントが新しいパラメータを使用して再実行されます。
例:
同じクエリが異なるパラメータで複数回実行されます。ステートメントを準備しないと、クエリが毎回解析されてコンパイルされるため、効率が低下します。ステートメントを一度準備すると、パラメーターが変更された場合でも、パラメーターのみが置き換えられるため、ステートメントの実行が速くなります。
以上がパラメータ化された SELECT クエリとその後のデータ挿入に PDO を効率的に使用するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。