データベースのOPEN,CLOSEについて

締切り済みの質問

データベースのOPEN,CLOSEについて

大変初歩的すぎる質問で申し訳ないのですが、
DBを使用する際には同然OPENし、利用が終わったらCLOSEするわけですが、このタイミングは
(1)アプリケーションの起動と終了のときに1度だけ行う
(2)データアクセルの要求があるつど行う。
のどちらが適切なのでしょうか?

投稿日時 - 2004-01-20 16:49:19

連想キーワード:

QNo.756267

すぐに回答ほしいです

0人が「このQ&Aが役に立った」と投票しています

[  前へ  |  次へ ]

回答(3件中 1~3件目)

ANo.3

このOKWEBのような WEBシステムの場合、DBコネクションを何本かまとめて取得しておきアプリケーションからの要求に応じて小分けにして渡す(貸し出す)という方法があります。そのような方法をコネクションプールといいアプリケーションからみたらオープン、クローズを毎回やっているように見えて実はDB接続は1回しかしていないという方法です。

つまり元締めがDB接続をやってアプリにDB接続を貸し出す、終わったら返してもらうという方法です。1本のDBコネクションを複数のアプリで使いまわす(共有する)ことができるけれども、DB接続は1回(というか取得した個数)で済むのでレスポンスも悪くなりません。

ただし、OKWebがそれを行っているかどうか知りません…(^^;

なんのシステムか分かりませんが、もし java を使ったシステムだった場合以下の汎用コネクションライブラリが参考になるかも…。

参考URL:http://www.jakarta.etrra-intl.com/commons/dbcp.html

投稿日時 - 2004-01-21 14:48:13

ANo.2

大雑把なご質問なので回答も大雑把になりますがw

レスポンスを考えるとリクエストの度におこなっていたのでは悪くなるので最初と最後に1度おこなうと言うのが普通です。

ただ、これが日次や月次のバッチ処理の場合は前述の通り(排他でおこなう)なのですが、通常の入力等ではシステムのセキュリティーの関係で毎回行う場合もあります。
まぁ、「物による」て事ですかね(笑)。

投稿日時 - 2004-01-20 17:17:35

ANo.1

大抵、(1) だと思います。
DLL だとか、OCX だとかで、場合によっては (2) のこともあるとは思います。

投稿日時 - 2004-01-20 17:16:22

あわせてチェックしたい
  • DBのOPEN ...
  • DBへのOPENについて ...
  • DBを扱う上でのclose()メソッドの必要性 ...
PR
【回答募集中】花粉にひと言、物申す![ 詳細 ]

OKWaveのオススメ

教えて弁護士さん!

お金の悩みQ&A特集はこちら