応用情報技術者 2016年 秋期 午前2 問12
問題文
データベース (DB) へのアクセスを行うブラウザからのリクエスト処理を、Webサーバが受信し解読した後に行う一連の実行処理の順序はどれか。ここで、Webサーバはリクエスト処理ごとにDB への接続と切断を行うものとする。
〔実行処理〕
① DBの切断
② DBへのアクセス
③ DB への接続
④ HTML文書の組立て
⑤ SQL文の組立て
⑥ ブラウザへの送信
選択肢
ア:③、 ②、 ⑤、 ④、 ⑥、 ①
イ:③、 ④、 ②、 ⑤、 ⑥、 ①
ウ:③、 ④、 ⑤、 ②、 ⑥、 ①
エ:③、 ⑤、 ②、 ④、 ⑥、 ①(正解)
データベースアクセスのWebサーバ処理順序【午前2 解説】
要点まとめ
- 結論:Webサーバは「DB接続→SQL文組立て→DBアクセス→HTML組立て→送信→DB切断」の順で処理を行います。
- 根拠:SQL文を組み立ててからDBにアクセスし、取得したデータをHTMLに組み込む流れが自然で効率的です。
- 差がつくポイント:SQL文の組立てとDBアクセスの順序を正しく理解し、DB切断は最後に行うことが重要です。
正解の理由
正解はエの「③ DBへの接続 → ⑤ SQL文の組立て → ② DBへのアクセス → ④ HTML文書の組立て → ⑥ ブラウザへの送信 → ① DBの切断」です。
まずDBに接続し、必要なデータを取得するためのSQL文を作成します。次にSQLを実行してDBからデータを取得し、そのデータを元にHTML文書を組み立てます。完成したHTMLをブラウザに送信し、最後にDB接続を切断します。これが効率的かつ正しい処理の流れです。
まずDBに接続し、必要なデータを取得するためのSQL文を作成します。次にSQLを実行してDBからデータを取得し、そのデータを元にHTML文書を組み立てます。完成したHTMLをブラウザに送信し、最後にDB接続を切断します。これが効率的かつ正しい処理の流れです。
よくある誤解
SQL文の組立てをDBアクセスの後に行う誤りや、DB切断を処理の途中で行う誤解が多いです。DB切断は必ず最後に行います。
解法ステップ
- WebサーバがDBに接続する(③)。
- 取得したいデータを指定するSQL文を組み立てる(⑤)。
- SQL文を実行してDBからデータを取得する(②)。
- 取得したデータを使ってHTML文書を組み立てる(④)。
- 組み立てたHTMLをブラウザに送信する(⑥)。
- 処理が終わったらDB接続を切断する(①)。
選択肢別の誤答解説
- ア: SQL文組立て(⑤)がDBアクセス(②)の後になっており順序が逆です。
- イ: DBアクセス(②)とSQL文組立て(⑤)の順序が逆で、データ取得前にSQL文が必要です。
- ウ: HTML組立て(④)がDBアクセス(②)の前にあり、データがない状態でHTMLを作成しています。
- エ: 正しい順序で処理が行われています。
補足コラム
WebサーバがリクエストごとにDB接続と切断を行う場合、接続のオーバーヘッドが発生します。実際のシステムでは接続プールを利用し、接続の再利用で効率化することが多いです。また、SQL文は動的に組み立てることが多く、セキュリティ面ではSQLインジェクション対策が必須です。
FAQ
Q: なぜDB切断は最後に行うのですか?
A: DB切断は処理がすべて完了した後に行うことで、必要なデータ取得や送信処理を妨げずに済みます。
A: DB切断は処理がすべて完了した後に行うことで、必要なデータ取得や送信処理を妨げずに済みます。
Q: SQL文の組立てはどのタイミングで行うべきですか?
A: DBアクセスの直前に行い、実行するSQL文を確定させてからDBに問い合わせます。
A: DBアクセスの直前に行い、実行するSQL文を確定させてからDBに問い合わせます。
関連キーワード: Webサーバ、データベース接続、SQL文組立て、HTML生成、リクエスト処理、DB切断

\ せっかくなら /
応用情報技術者を
クイズ形式で学習しませんか?
クイズ画面へ遷移する→
すぐに利用可能!

