Access(ADP & VBA)とMSDEで作るクライアントサーバーシステム(c/s)

 
実践テクニック、Accessで作るクラサバシステム



2003/01/06配信
 

第1コース  第4回 「テーブルについて」




 

■ テーブルについて

 テーブルを作る前にシステム設計をする必要があります。
 このテーブルの設計を間違えると後々システムの作成で苦労する
 ことになります。

 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年以上の開発ノウハウを惜しみなく完全公開!

Mail:  (半角英数字)     Powered byまぐまぐ


HOME / お客様の声 / メルマガ / 販売管理ソフト教材 / 会社概要/ 特定商取引法/ お申し込み
 お問い合わせ / メルマガのご意見ご感想 / メルマガのバックナンバー/ プライバシーポリシー
 


 Copyright (c) 2001 ティウェア All rights reserved.