• 締切済み

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

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

みんなの回答

回答No.3

このOKWEBのような WEBシステムの場合、DBコネクションを何本かまとめて取得しておきアプリケーションからの要求に応じて小分けにして渡す(貸し出す)という方法があります。そのような方法をコネクションプールといいアプリケーションからみたらオープン、クローズを毎回やっているように見えて実はDB接続は1回しかしていないという方法です。 つまり元締めがDB接続をやってアプリにDB接続を貸し出す、終わったら返してもらうという方法です。1本のDBコネクションを複数のアプリで使いまわす(共有する)ことができるけれども、DB接続は1回(というか取得した個数)で済むのでレスポンスも悪くなりません。 ただし、OKWebがそれを行っているかどうか知りません…(^^; なんのシステムか分かりませんが、もし java を使ったシステムだった場合以下の汎用コネクションライブラリが参考になるかも…。

参考URL:
http://www.jakarta.etrra-intl.com/commons/dbcp.html
  • PC-GATE
  • ベストアンサー率38% (552/1446)
回答No.2

大雑把なご質問なので回答も大雑把になりますがw レスポンスを考えるとリクエストの度におこなっていたのでは悪くなるので最初と最後に1度おこなうと言うのが普通です。 ただ、これが日次や月次のバッチ処理の場合は前述の通り(排他でおこなう)なのですが、通常の入力等ではシステムのセキュリティーの関係で毎回行う場合もあります。 まぁ、「物による」て事ですかね(笑)。

回答No.1

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

関連するQ&A