解答例 - 実習課題1 - 3.テーブルの操作
(実習課題1)
表 3-1 に示す列を持ったテーブル employee を定義する SQL 文を書きなさい。それぞれの列のデータ型等の情報は表 3-2 に、制約は表 3-3 に示すとおりである。
  表 3-1: テーブル employee
  
    | e_num | 
    e_name | 
    year | 
    gender | 
    office | 
  
  表 3-2: 社員テーブルのデータ型など
  
    | 列名 | 
    説明 | 
  
  
    | e_num | 
    従業員ナンバー、固定長文字列、文字列の長さ 4、主キー | 
  
  
    | e_name | 
    従業員名、可変長文字列、最大文字列の長さ 40 | 
  
  
    | year | 
    入社年、整数型 | 
  
  
    | gender | 
    性別、固定長文字列('0','1')、文字列の長さ 1 | 
  
  
    | office | 
    所属営業所番号、固定長文字列、文字列の長さ 2 | 
  
  表 3-3: 制約
  
    | 列名 | 
    制約 | 
  
  
    | e_name | 
    NOT NULL 制約  | 
  
  
    | year | 
    データの入力時に、1970 より小さい値は受け付けない  | 
  
  
    | gender | 
    データの入力時に、'0' または '1' 以外の値は受け付けない  | 
  
解答例
	CREATE TABLE employee
(
   e_num     CHAR(4)  PRIMARY KEY ,
   e_name    VARCHAR(40)  NOT NULL ,
   year      INTEGER  CHECK(year >= 1970) ,
   gender    CHAR(1) CHECK(gender = '0' OR gender = '1') ,
   office    CHAR(2)
);