データベース(DB)へのアクセスを行うブラウザからのリクエスト処理を,Webサーバが受信し解読した後に行う一連の実行処理の順序はどれか。
ここで,Webサーバはリクエスト処理ごとにDBへの接続と切断を行うものとする。
[実行処理]
① DBの切断
② DBへのアクセス
③ DBへの接続
④ HTML文書の組立て
⑤ SQL文の組立て
⑥ ブラウザへの送信
③,②,⑤,④,⑥,① ③,④,②,⑤,⑥,① ③,④,⑤,②,⑥,① ③,⑤,②,④,⑥,① 購入状況を確認しています… 正答 4
解説 正解は4です。
WebサーバがDBを使って動的にWebページを作るときの処理の流れを問う問題です。
DBへの問合せにはSQL文が必要で、問合せ結果を使ってHTML文書を組み立てます。
本問では、リクエストごとにDBへの接続と切断を行います。
【処理の流れ】
まず、③DBへの接続を行います。
次に、リクエスト内容をもとに⑤SQL文を組み立てます。
組み立てたSQL文で②DBへアクセスし、結果を受け取ります。
受け取った結果を使って④HTML文書を組み立てます。
組み立てたHTML文書を⑥ブラウザへ送信します。
最後に①DBを切断します。
【選択肢別解説】
1:× ②DBへのアクセスの後に⑤SQL文を組み立てています。
SQL文がなければDBにアクセスできないので、順序が逆です。
2:× ④HTML文書の組立てがDBへのアクセスより前にあります。
HTMLにはDBから取得した結果を埋め込むので、アクセスの後に組み立てる必要があります。
3:× ④HTML文書を⑤SQL文より前に組み立てています。
表示内容はDBの結果に依存するので、この順序では組み立てられません。
4:○ 接続、SQL文の組立て、アクセス、HTML文書の組立て、送信、切断の順で、各処理の前提がそろっています。
【ポイント】
「ある処理の入力は、どの処理の出力か」を確認すると順序が決まります。
SQL文はDBアクセスの入力、DBの結果はHTML組立ての入力です。