はてナビ(はてな用ブラウザ)にデスクトップデータベースを実装しようと考えています


あまり、データベースに詳しくないので、SQL型、デスクトップ型、リモート型の3種類に
どんなものがあるかくらいしか知りません

とりあえず、実験で作ったParadoxを採用したデータベースがすんなり動いたので
これを採用しようかと考えているのですが、いかがでしょうか?

問題点や欠点などがあれば指摘してください

参考:
http://beta.g.hatena.ne.jp/aki73ix/

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:2005/11/29 16:46:53
  • 終了:--

回答(3件)

id:Kumappus No.1

くまっぷす回答回数3784ベストアンサー獲得回数1852005/11/22 19:53:37

ポイント5pt

http://www.corel.jp/

コーレル 株式会社 - Corel Corporation.

うーむ、Corelが持ってる(元Borlandの)Paradoxですよね?

これってフリー配布できたんでしょうか?そこが気になります。

http://www.microsoft.com/japan/msdn/library/default.asp?url=/jap...

MSDN ライブラリ サイト移行に関する重要なお知らせ

どの程度のデータ検索機能を要求されているのかにもよりますが、

http://www.asahi-net.or.jp/~ef2o-inue/vba_o/sub05_130_010.html

VBA応用(DAOでデータを取得する。)

簡単なものならWindows本体にJetデータベースが使われているので、そちらを使うというのはどうでしょうか。

id:aki73ix

配布に関する問題は大丈夫です

>>bdedeploy

>アプリケーションとともに BDE または SQL Link を再配布する場合,使用料またはその他のインストールごとの費用は必要ありません。

>さらに,BDE および SQL Link を再配布する回数も制限されません。

JetDBを使った場合と比べて優劣はありますか?

2005/11/22 20:20:24
id:Kumappus No.2

くまっぷす回答回数3784ベストアンサー獲得回数1852005/11/22 20:38:10

ポイント25pt

ほう、Paradoxはフリー配布可能なんですね( ..)φめもめも。

URLのようにパフォーマンス的にはJetのほうがよい、という話もあるようですが、大量/高速にデータ処理を行うのでなければ大差ないと思います。

したがって今のままでいいのでは。

id:aki73ix

逆にBorlandのデータベースで配布したり、組織利用しちゃダメなのはInterbaseみたいですね

なるほど、サイトは参考になります|。・・)ノ

Localで使う分には量が少なければパフォーマンスはParadoxの方がいいみたいですね・・・

パフォーマンス以外の信頼性や扱えるレコード数の上限などが分かる方いらっしゃいましたら、引き続きお願いします

2005/11/22 20:49:21
id:cx20 No.3

cx20回答回数607ベストアンサー獲得回数1082005/11/25 04:19:06

ポイント470pt

http://www.int21.co.jp/pcdn/vb/noriolib/vbmag/9804/db_solu/

�p�t�H�[�}���X�̉��͂ЂƂ‚ł͂Ȃ�

Paradox 形式を使用する上での問題点として以下のような点が上げられると思います。


・ファイルが壊れやすい(Access データベース も壊れやすいですが・・・)

・ユーザーが少ない(=参考になりそうな情報(サポート情報)が少ない)

・BDE の配布の問題(バージョン/互換性の問題)


その中で特に自分が気にしているのは、BDE の配布の問題です。


異なるバージョンの BDE をインストールすることによって、

他のアプリケーションが動作しなくなるような例もあるようですので、

BDE を使わずにすむのであれば、使用しないほうが無難なのでは?と思います。


<BDE 関連の警告メッセージの例>

--------------------------------------------------------------------------

■ メイン フレーム / セットアップ中に「Borland……」とメッセージが出る場合

http://www.taxnavi.co.jp/frmainFAQ.html


「Borland Database Engine(BDE)を検出しました。

このセットアップを続けると既存のフルセット版のBDEディレクトリ以外に

分割後のBDEがインストールされます。

2つのBDEをインストールするとフルセット版のBDEを必要とするア

プリケーションが問題を起こす可能性があります。

セットアップを続けますか?」


■ 接続に関するFAQ

http://www.sint.co.jp/siob/v7/faq/faqtech2.html


既存BDE使用アプリケーションとOBの使用するBDEバージョンが異なる場合

既存アプリケーションが動作しなくなる可能性があります。

--------------------------------------------------------------------------


ということで、Kumappus さんの回答にもありましたが、

BDE を使うよりは、OS 標準で使える Jet データベース(Access データベース形式)

を使ったほうがリスクは少ないと思います。

http://www.f3.dion.ne.jp/~element/msaccess/AcTipsGnrHowToUseJetW...

MS-Access を使わずに Jet Database Engine を使用する方法

URL は「MS-Access を使わずに Jet Database Engine を使用する方法」です。

一応、参考までに Paradox と Access データベース(Jet データベース)の仕様を調べてみました。


以下は、Paradox の仕様です(もしかしたら使用されているバージョンと異なるかもしれません。)


-------------------------------------------------------------------

Paradox Limitations

127 Tables open per system

254 Tables open per system (4.01)

64 Record locks on one table (16Bit) per session

255 Record locks on one table (32Bit) per session

255 Records in transactions on a table (32 Bit)

512 Open physical files (DB, PX, MB, X??, Y??, VAL, TV)

1024 Open physical files (DB, PX, MB, X??, Y??, VAL, TV) (4.01)

300 Users in one PDOXUSRS.NET file

255 Number of fields per table

255 Size of character fields

2 Billion records in a table

2 Billion bytes in .DB (Table) file

10800 Bytes per record for indexed tables

32750 Bytes per record for non-indexed tables

127 Number of secondary indexes per table

16 Number of fields in an index

255 Concurrent users per table

256 Megabytes of data per BLOb field

100 Passwords per session

15 Password length

63 Passwords per table

159 Fields with validity checks (32 Bit)

63 Fields with validity checks (16 Bit)

-------------------------------------------------------------------


1ファイル(1テーブル)あたり 2GB まで保存できるようです。

http://www.discinterchange.com/techtalk_access_fixed_import_.htm...

Importing Mainframe Files into Microsoft Access - A Disc Interchange technical article

以下は、Access 97 と Access 2000 形式のデータベースの仕様です。


-------------------------------------------------------------------

Parameter / Access 97 / Access 2000

Number of fields in a table / 255 / 255

Number of characters in a text field / 255 / 255

Number of characters in a record / 2000 / 2000

Maximum table size / 1 GB / 1 GB

Maximum MDB size / 1 GB / 2 GB

-------------------------------------------------------------------


Access 97 形式だと 1GB まで

Access 2000 形式だと 2GB まで(1テーブルは 1GB まで)保存できるようです。


ただし、Access 2000 形式は、内部形式が UNICODE ベースになっているため、

Access 97 形式より余計に情報を食う(ファイルサイズが大きくなる)ようです。

http://hp.vector.co.jp/authors/VA036663/dbmsbyd6p.htm

「Delphi6Personalでデータベース」についてとりとめもなく考える

URL は Delphi で ADO や DAO を使う方法に関する情報です。


個人的には、

「ADO + Jet データベース(Access 97 形式)」

あたりがお勧めです。


Delphi 6 Personal(フリー版)で試してみましたが、問題無く使えそうです。

http://www.int21.co.jp/pcdn/vb/noriolib/vbmag/9912/db_solu/

��21���@�f�[�^�x�[�X�����邳�܂��܂ȋ^��

パフォーマンス(スピード、ファイル効率)は Access 2000 より Access 97 形式の方が良いようです。

http://www.accessclub.jp/ado/adox/index.html

ADOの拡張機能であるADOX : ADOX入門講座

URL は ADOX(ADOの拡張機能)を使う方法に関する情報です。


ADOX を使うことによって、Access データベース(*.mdb)ファイルを作成したり、

テーブルの作成や削除を行うことができます。


サンプルコードは Access VBA 用ですが、Delphi でも同様に使えます。

URL は DAO と ADO に関する情報です。


余談ですが、Jet データベースエンジン経由でも、Paradox 形式のファイルを扱えるようです。

データベースの接続文字列で「Extended Properties=Paradox 5.x;」のような

記述をすれば使えるようです。


ただし古い Jet データベースエンジンだと、読み込みしか出来ないようです。


■ [INFO] BDE を使用しない Paradox と dBase の ISAM ドライバ

http://support.microsoft.com/kb/263561/JA/

http://homepage2.nifty.com/Mr_XRAY/Delphi/plSamples/T_ADO_Export...

サンプルプログラム集 ADOでParadoxのエクスポート

URL は Delphi + ADO で Paradox 形式のファイルを扱う方法です。

http://www2p.biglobe.ne.jp/~sakurait/cstrue/chap3main.htm

���O�� Microsoft Access �̌���

参考情報です。


Access MDB が壊れやすいのは、マルチユーザーで使うから(それだけじゃないけど)という話。

ローカル環境で使う分にはそれほど問題にならないかと。

id:aki73ix

ファイルが壊れやすいというのは、マルチユーザーで使うからという説明が、どこかのサイトにあったので、ちょっと安心しきっていました(^^;

確かに、ネット上の情報は少ないですね、一通りのデータベースアクセスができるようになるまでかなり苦労しました|っx_x)っ

なるほど、最新版のBDEを配布すればいいというわけでもないのですね

非常に参考になりました

2005/11/29 17:11:56

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません