■ テーブルについて
テーブルを作る前にシステム設計をする必要があります。
このテーブルの設計を間違えると後々システムの作成で苦労する
ことになります。
1.データの構造
・列名 データ項目名をつけます。
・データ型 列のデータ型を指定します。(MSDEのデータ型参照)
・長さ 文字、バイナリ型は長さを指定
ほかの型は型に応じた長さが設定されます。
・精度 通貨型において保存可能桁数
小数点以下の桁数も含めます。
・桁数 小数点の右側の最大文字、最大数字の数。
・Null値を許容 列にNull値が許容されるかのチェック。
・既定置 入力されていない場合に挿入される値。
・IDENTITY 列が新しい行に対し増加値を作るかどうか。
・IDENTITY はじめの行に割り当てられる値。
シード 空白の時は1に設定。
・IDENTITY 2番目からの増加値。
インクリメント
・Is Rowgrid レプリケーションを使うデータベース開発に
使用する通常は使用しません。
-------------------------------------------------------------------
*IDENTITYにチェックを入れてシードを1インクリメントを3に
するとその項目が1(第1レコード)、4(第2レコード)、
7(第3レコード)、10(第4レコード)
というように初期値が1で3づつ増加することになります。
2.MSDEのデータ型
・char
最大8,000字の固定長文字列
・nchar 最大4,000字の固定長UNICODE文字列
・varchar
最大8,000字の可変長文字列
・nvarchar
最大4,000字の可変長UNICODE文字列
・decimal -10^38-1〜10^38-1までの値を格納する数値
データ型
・numeric decimal型と同じ
・tinyint 0〜255までの値を格納するデータ型
・smallint -32,768〜32,767の整数を格納するデータ型
・int
-2,147,483,648〜2,147,483,647の整数を格納する
データ型
・float 正または負の浮動小数点数値を格納するデータ型
・real 正の数値または浮動小数点数値を格納するデータ型
・money
-922,337,203,685,477.570〜922,337,203,685,477.5807
の通貨型を格納するデータ型
・smallint -214,748.3648〜214,748.3647の通貨型を格納する
データ型
・datetime 3.33ミリ秒の精度で1753年1月1日〜9999年12月31日
までに対応する日付及び時刻を格納するデータ型
・smalldatetime 1分の精度で1900年1月1日〜2079年6月6日まで
に対応
・text 最大2,147,483,647バイトの可変長文字データ型
・ntext 最大1,073,741,823バイトの可変長UNICODE文字
データ型
・image 最大2,147,483,647バイトのバイナリデータ型を
格納するデータ型
・bit 1ビットで0または1を格納するデータ型
・binary 最大8,000バイトの固定長2進データ
・varbinary 最大8,000バイトの可変長2進データ
*固定長と可変長の違い
例えば、名前のフィールドを40字で作るとします。
固定長を使うと使われないスペースがあっても常に40文字を
確保します。
可変長は8文字しか使わなければ8文字だけしか使われません。
もちろん、40字使えば確保してくれます。
文字をキー項目とする場合は固定長を、比較的長い文字を確保し
キー項目にしないものは可変長にするのが一般的なようです。
*UNICODEとANSIの違い
UNICODEは、アルファベット、数字を含めすべての文字を
2バイトで表すコード体系です。
MSDEのデータ型の先頭に「n」が付く物です
(nchar、nvarchar、ntext)
ANSIは、アルファベットや数字は1バイト、漢字やかな文字を
2バイトで表すコード体系です。(char、varchar、text)
3.AccessとMSDEの比較
Accessのデータ型 MSDEのデータ型
整数型(integer) smallint
長整数型(long) int
単精度浮動小数点型(single) real
倍精度浮動小数点型(double) float
日付/時刻(date) datetimer, smalldatetime
通貨型(currency) money, smallmoney
バイト型(byte) tinyint
テキスト型(string) varchar, nvarchar
メモ型
text
4.商品マスタのテーブルを作成してみます。
列名 データ数 長さ 精度 桁数 Nullを許容 既定値 IDENTITY
商品コード Int 4 10 0
商品名 nvarchar 40 0 0
カナ名 nvarchar 40 0 0
規格 nvarchar 40 0 0 レ
売上単価 money 8 19 4
(0)
仕入単価 money 8 19 4
(0)
容量 money 8 19 4
(1)
単位 nvarchar 4 0 0
レ
主キーを商品コードにします。
商品コードのフィールドを選択して、キーのマークボタンを押します。
キーには主キー(Primary Key)、外部キー(Foreign Key)が
あります。
主キーはレコードを一意に識別するキーになります。
外部キーは他のテーブルとの関係を定義するものです。
主キーの値が同一のものをレコードに保存することはできません。
また、Null値を登録することはできません。
次回は、ビューについて説明します。
===================================================================
◆
実践テクニック、Accessで作るクラサバシステム ◆
あなたのできないところの解決方法として参考にしてください。
編集・構成:高橋浩
提供・発行:ティウェア
http://www.1tware.com/index.html
Access2000+MSDE2000、Access2002+MSDE2000、Access2003+MSDE2000で
作る販売管理ソフト、クライアントサーバーシステムを構築
※当メールマガジンに掲載された記事を許可なく転載することを禁じます。
===================================================================
実践テクニック、Accessで作るクラサバシステム(隔週 火曜日発行中)
SEが10年以上の開発ノウハウを惜しみなく完全公開!
|