ゴリラ向け動画サイト「ウホウホ動画」にありがちなこと

いつも参考にさせていただいております。

VB等の言語を使用してWindowsアプリを作成するときに
データベースを使用したくなることが多いと思いますが、
そういった場合にはどうしても「データベース」として
オラクル等を使用しなければならないのでしょうか?

ふと疑問に思ったのですが、例えばMS-Access
でデータベースを作った場合に.mdbファイルが作成
されますが、これってAccessで開いて初めてデータ
ベースとして機能しますよね?


かなり高度な話になるのでしょうが、自分でアプリを
作成してそのアプリ独自のファイルを作成してデータ
ベースを構築することは出来るのでしょうか?

そんな作り方をしている方はいるのでしょうか?

ソフト屋のホントに売るためのソフト開発でもないと
そこまでしないぞ、ということなのかもしれませんが。

どなたかご意見ください。

A 回答 (4件)

RBMSが普及する前は、データの管理はアプリが個別でして


いるのが普通でしたよ。
今でも、COBOLで開発したプログラムは独自でファイル管理
していることが多いようですね。

ただ欠点として、アプリが独自にファイル管理を行うと、
別のソフトがそのデータを操作するのが非常に困難ですし、
データのバックアップや排他処理などの管理も自分でPG
を作らなくてはいけなかったので、その辺のことを簡単な
操作でしてくれるRDBMSの普及に伴い、PCやUNIXのプログラム
ではRDBMSに役割を譲っているのが現状ではないかと思います。

私も10年くらい前は、BtrieveやF-ISAMなどのレコード
マネージャをC言語から呼び出したり、独自でファイル管理
をするコードをC言語で書いていましたよ。
ただ生産性の面では、RDBMS+4GL(PowerBuilderが得意)
に全然劣っていたので、RDBMSや4GLの普及に伴いそういう
プログラムは自然と書かなくなりました。
    • good
    • 0

#1の補足です。



独自のDBみたいなものですね。

でも以外に独自っぽいファイル(拡張子が独自のやつ)でも実はMDBだったりしますよ。
ただ単に拡張子だけを変えているものも多いです。
(拡張子をMDBに変えたらアクセスでそのまま開けたり)

また、ビートリーブ?を使っているソフトも多いですね。(最近は減った)

また、サイボウズ社のグループウェアとかは独自のデータベースエンジンらしいですね。

あと、データベース的な扱いをする時は、既存のエンジンを使った方が速度もそこそこ速く、SQLが使えたりするのでよいと思います。

独自でファイル保存しているプログラムはテキスト/バイナリいろいろありますね。

まぁACCESSも人の手によって作られたプログラムですから、独自にデータベースエンジンを根気よく作られるのもいいのかも。
ソースを公開しているフリーソフトで勉強するのも1つの手ですね。
    • good
    • 0

*.mdbをデータベースとして使用する場合、MS-ACCESSを使用しなければならないわけではありません。


*.mdbは「Jetエンジン」と呼ばれるデータベースエンジンのファイル形式です。
「データベースエンジン」とは、データベースを管理する核の部分と解釈してください。
実は、この「Jetエンジン」はVBにも付属してます。
従って、何も、ACCESSだけでしか使えないわけではないのです。
もちろん、VBを買えば無料で使用できます。
ただし、「Jetエンジン」はあくまでも個人用のデータベースです。
複数ユーザーが同時に更新するとデータ化壊れる場合があります。

一方、OracleやSQL-Serverなど、商用RDBMSは、本格的な業務アプリケーションなどに使用されます。
「Jetエンジン」とは違い、あくまでも複数ユーザーを前提としてます。

以上から、個人用の小規模なデータベースアプリケーションでしたら、通常は「*.mdb」の「Jetエンジン」を使用します。
テキストファイルのランダムアクセス機能を使うテもありますが、お勧めしません。
    • good
    • 0

VBでACCESSのデータベースを利用したプログラムは世の中いっぱいありますよ。



VBからSQLでACCESSのデータを簡単に取得できますから。

ADO,DAO等を検索してみてください。

この回答への補足

早速のご回答ありがとうございます。

質問の書き方がまずかったようで、申し訳ない。

AccessのデータベースをAccess以外から
使用したいのではないのです。

むしろ逆で、あえてそういったデータベースと言われる
ものを使用せずに全て自作の中でファイルにデータを保
存してデータベース的な扱い(キーによるレコードの扱
いとか)をするようなことは出来ないのかな?と思いま
して。

市販されているいろんなアプリがありますが、どれも
独自のファイル形式で保存していますが、アプリの中で
データベース的な内容を扱っているものがありますよね?

例えばハガキ印刷系の住所録とかもそうですし。

自作アプリの中で、そういったことは出来ないのかなと
思ったわけです。

いかがでしょうか。

補足日時:2002/10/09 08:08
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

関連するカテゴリからQ&Aを探す