![]() |
||
<HOME <お願い事項 <Access2002 TOP <Access97 TOP <サイト内検索 | ![]() |
|
![]() |
||
MS-Access2000超入門部屋--Access2000の仕様 | ||
あまり気にすることはないと思うんですけどね。
これはあくまでも「論理上の仕様」です。実際には気にせず作るようにしましょう。
Access2000ヘルプ:「仕様」で検索しました。
データベースに関して。 データベース(mdbファイル)の最大サイズ 2GB。まじかよ。 データベースのオブジェクトの数 32,768個。これは97と同じかな。 オブジェクト名の文字数 64。へえ、そうなんだ。 データベースを同時に使用できるユーザーの数 255。これも同じだ。
テーブルに関して。 テーブルのフィールド数 255。これも97と同じだ。 同時に開くことができるテーブル数 2,048。ちょっと制限あり。 テーブル サイズ 1GB。へえ、これは2GBじゃないんだ。 テキスト型フィールドの文字数 255。標準は50だね。 メモ型フィールドの文字数 65,535。でも1GBまでいけるらしい。 OLE オブジェクト型フィールドのサイズ 1GB。これも同じかな。 テーブルのインデックス数 32。これはそうですね。 インデックスのフィールド数 10。 テーブルやフィールドの説明の文字数 255。コメントだね。 1 レコードに格納できる文字数 2,000。メモとOLEを除く。へえ。。。
クエリーに関して。 リレーションシップの設定数 1 つのテーブルにつき、32 からリレーションシップに含まれないフィールドまたはフィールドの組み合わせに対して設定されたインデックス数を引いた数 クエリのテーブル数 255。 レコードセットのフィールド数 255。 レコードセットのサイズ 1GB。開いてみないとわかんないしなぁ。 WHERE または HAVING 節での AND の数 40。ORもおなじかな。 SQL ステートメントの文字数 約 64,000。 デザイン グリッドのセル内の文字数 1,024。式とか書くときね。
フォームおよびレポートについて。 ラベルの文字数 2,048。こんなに入力しないよなあ。 テキスト ボックスの文字数 65,535。メモ型フィールドが、ね。 フォームまたはレポートの幅 55.87cm (22 インチ)。 セクションの高さ 55.87cm (22 インチ)。縦ね。 (デザイン ビューで) すべてのセクションおよびセクション ヘッダーの高さ 508cm (200 インチ) レポートの印刷ページ数 65,536 ページ。制限あるんだ。 フォームまたはレポートの有効期間中に追加できるコントロールとセクションの数 754。有効期間って、なんだろう・・・。 1 つのレポートのヘッダーおよびフッターの数 レポート ヘッダー/フッター : 各 1 組
ページ ヘッダー/フッター : 各 1 組
グループ ヘッダー/フッター : 各 10 組
マクロについて。 マクロのアクション数 999。 条件の文字数 255。 コメントの文字数 255。 アクション引数の文字数 255。
Access97とそんなに変わってないですね。
これは、昔っからずっとそうですけど、Accessのテーブルに限らず、リレーショナル・データベースの基本的なデータ構造は、「すだれのように、縦にどんどん伸びちぢみる」つまりレコード数がどんどん増えたり減ったりするってことです。
1つのテーブルに格納できるレコード数の限界をものすごく気にする方もいらっしゃるんですけど、上のようにオブジェクトのサイズは決まっていても件数に決まりはありません。
それよりも、パソコンのハードディスクに保存するひとつのファイルとして考えたときに、1GBのファイルって、安全か????ってことを考えないといけないですよね。
1GBっておよそ1,000,000,000バイトですかね。で、1レコードの長さがだいたい500バイトのテーブルがあったとすると、2,000,000、ええと、200万レコードですか。で、これが、1レコードの長さが画像とかいっぱい入ってて2000バイトくらいあったとすると、50,0000ということで、50万レコード。つまりはテーブルにすべてがかかってるというわけです。あ、でも、実際にはもちっと容量食うと思いますけどね。
でも、レコード長とかって、Accessの中では正確には把握できないみたいですね。かなりどんぶり勘定になっちゃいますから、1バイト単位の容量計算は難しい・・・。やってみないとわかんないってとこがあります。
フィールドの数が4つ5つのテーブルであれば、500万レコードくらいのシステム、作ったことありマスよ。あとは検索の仕組みをきちんと考えて設計すれば、別段問題はないはずです。ただ、そこで「どうしても500万レコードいっしょのテーブルの中にいれとかないとだめなの?累積テーブルとか別に作ってレコードを移したりする仕組み考えなくていいの?」ってことは、考えないといけないですよね。いっしょになってるってことは、いっしょにつぶれる確立も高くなっちゃう。
スプレッドシートではないので、件数などのスペックよりもまず、安全で使いやすいデータ設計を考えるべきでしょう。やっぱねぇ。設計ですよ。設計。頭痛いですね。
![]() |