研究室‎ > ‎卒業生のみなさまへ‎ > ‎LUU TUAN ANH‎ > ‎読書‎ > ‎

明快入門SQL

リレーショナルデータの基礎知識

  • DBMS:DataBase Management System データベース管理システム
  • RDBMS :  Relational DataBase Management System  リレーショナルデータベース管理システム
    • 相互に関係あるデータを集めて、「表」にしたものを、データ処理の単位
    • 複雑なデータの場合は、複数の表を作る。
    • 属性(列)
    • 組(行)
  • 表とビュー
    • 表:実際の表
    • ビュー:仮想の表
  • キーの種類
    • 主キー
      • インデックスの役割、重複していない
    • 外部キー
      • 他の表の主キーを参照する
    • 候補キー
      • 主キーの条件を満たしている列
      • 主キーにすることができる
    • 複合キー
      • 複数の列の組み合わせ、を主キーにしたもの
      • 複合主キーとも呼ばれる
  • 正規化
    • 一つの事実がひとつの場所に記録される
    • 第一正規化:繰り返されている項目がないように
    • 第二正規化:主キーとなる列の値が決まれば、他の列の値が決まるように
    • 第三正規化:主キーでない列の値によって、他の列の値が決まることがないように
    • 非正規化

SQLの基礎知識

  • SQL : Structured Query Language.
  • ユーザーがデータベースを操作するための言語
  • データ制御言語(DCL) 
    • GRANT, REVOKE, SET TRANSACTION, COMMIT, ROLLBACK
  • データ定義言語(DDL)
    • CREATE, DROP, ALTER, 
  • データ操作言語(DML)
    • SELECT, INSERT, UPDATE, DELETE, 
  • SQLの言語要素
    • コメント
      • --
      • /* */
    • 改行とターミネータ
      • SQL製品によって、つかうものも使わないものもある。
    • キーワード
      • 予約されているキーワードを使うことができない。
      • キーワードには、大文字と小文字の区別はない。
      • キーワードは大文字で書いた方がいい 
    • 名前:
      • 先頭は英文字か_。
      • 大文字と小文字の区別はない
    • 定数:
    • データ型
      • CHAR
      • VARCHAR
      • CLOB
      • BLOB
      • NCHAR                   (UNICODE)
      • NCHAR VARYING    (UNICODE)
      • NCLOB                    (UNICODE)
      • SMALLINT
      • INTEGER
      • NUMERIC(N,M)
      • DECIMAL(N,M)
      • DEC
      • FLOAT
      • REAL
      • BIT
      • BIT VARYING
      • BOOLEAN
    • CAST 型可変

データベースと表の操作

  • CREATE DATABASE  name 新しいデータベースを作る
  • USE name 既存なデータベースを使う
  • DROP DATABASE name データベースを排除する
  • CREATE TABLE name (
         列名1 データ型,
         列名2 データ型,
         ....
    )
    • UNIQUE 重複禁止の制約
      • 列名 データ型 UNIQUE
      • UNIQUE(複数の列名)
    • CHECK
      • 列名 データ型 CHECK(式)
      • CHECK (式)
    • PRIMARY KEY (主キーの制約)
      • 列名 データ型 PRIMARY KEY 
      • PRIMARY KEY (列名)
    • REFERENCES 
      • 列名 データ型 REFERENCES 参照先表名(参照先列名)
      • FOREIGN KEY (列名)  REFERENCES 参照先表名(参照先列名)
  • DROP TABLE
  • INSERT INTO
  • ALTER TABLE 表を変更する
    • ADD 
    • DROP
    • UNIQUE
  • 新規ユーザーの作成と排除 複数の方法がある。SQL製品によって違う。
  • GRANT 権限 ON オブジェクト名 TO ユーザー名 [WITH GRANT OPTION]
    • 権限 SELECT  表を検索できる
    • 権限 INSERT  表に行を入れる
    • 権限 DELETE  表から行を消除できる
    • 権限 UPDATE  表の行を更新できる
    • 権限 REFERENCES 外部キーからの参照を許す
    • 権限 ALL PRIVILEGES 上記のすべての指定
  • REVOKE 権限 ON オブジェクト名 FROM  ユーザー名

データの入力・変更・消除

  • INSERT INTO 表名 VALUES (値)
  • INSERT ~ SELECT
  • UPDATE
  • DELETE

データの検索

  • SELECT 列名 FROM 表名
    • 計算結果でも表示させる。+-*/
    • SELECT 列名 FROM 表名 WHERE 検索条件
      • WHERE 列名 IN (値)
      • WHERE 列名 BETWEEN 範囲開始  AND 範囲終了
      • WHERE 列名 LIKE パターン文字列
        • % 0字以上の任意の文字列
        • _ 任意の1文字
    • SELECT [ ALL | DISTINCT ] 列名 FROM 表名
      • ALL 全部に表示する
      • DISTINCT 重複なしに表示する
  • ORDER BY 
Comments