Oracleデータベース - 二次元テーブルアカウント管理&管理

 

Oracleのアカウント管理

機関:特定の事柄で動作する能力、およびこの能力が権限と呼ばれています。
役割:権限のコレクションは
、Oracleの自身のアカウントの
  システムアカウント管理
    機能は:オラクルの最も権威を操作している、主に一般勘定とoralceデータを管理するために使用される
    Oracleのデータの保守担当者:人間使用して
  SYSスーパー管理者アカウントを
    特長:とすべての権限システムが、他の権限が
    使用する人々へ:オラクルの包囲ライオン
1、アカウントを作成し
  、システムアカウントを使用してログインするには、DBAは、Oracle管理システムのIDを使用し
             、ユーザーにテストによって識別されるテストの作成、        
アカウントを維持するために、2を
  権限を付与するために与えられた権限をするユーザー名またはロール名
  のテストに接続許可; -に与えられたユーザーのログオン権限が
  テストにリソースを与える; -リソースをユーザーの操作権限を
  テストへの助成DBA; -ユーザに与えられDBA権限が
  SCOTT.EMPから選択*; - -表示他のユーザーテーブル(テーブル名、ユーザ名。)         
  ユーザー名から削除許可REVOKE権限またはロール名
    のテストからREVOKEのDBA;
3、口座ドロップユーザーのユーザー名を削除
  ユーザーテストをドロップします。

Oracleの2次元テーブルの管理

Oracleは、2次元テーブルを作成します

使用:CREATE TABLE表名(タイプ名フィールド、タイプフィールド名、...);
  データ型:
    番号タイプ
    値タイプ
      整数番号タイプ()の全長
      の浮動小数点型の数(B)の合計長さ、小数ビット長は小数を必要としない、Bです。
    VARCHAR2型
      文字型VARCHAR2(LN)LN文字の最大長を表し、実際の記憶メモリの長さは文字サイズに応じて割り当てられるが、LNを超えることができない
      機能:メモリ空間の動的割り当ては、保存
    CHAR型
      に関わらず文字の文字型char(LN)をどのようにデータ長、データを記憶する直接オープンスペースLNサイズ
      特性:よりストレージ効率VARCHAR2
    DATEタイプ
表学生(作成し
      たSnO番号(10)、
      SNAME VARCHAR2(100)
      。SAGE番号(3)、
      SSExチャー(100)、
      VARCHAR2のsfav(500)、
      sbirth DATE  

Oracleは、2次元の表を作成し、制約を追加します

図1に示すように、主キー制約
2、非ヌル制約
3、チェック制約
4、唯一の制約
5、外部キー制約を
作成するための単純なテーブル及びフィールドタイプ
      表学生(作成し
           たSnO番号(10)、キー--primary
           SNAME VARCHAR2を(100)、 - -notヌル
           SAGE番号(3)、(SAGE <150およびSAGE> 0)--check
           sSEx CHAR(4)、(sSEx = 'M'又はssex = 'F')--check
           sfav VARCHAR2(500)、
           sbirth DATE、
           SQQ VARCHAR2(30)--unique。
           --constraints pk_student_sno主キー(のSnO) -主キー制約の追加
           --constraints ck_student_snameチェック(SNAMEがnullでない ) - 非空制約
           --constraints ck_student_sageチェック(セージ<150とセージ> 0) -チェック制約
           --constraints ck_student_ssexチェック(ssex = 'M'またはssex = 'F') -チェック制約
           --constraints un_student_sqqユニーク(SQQ) -唯一の制約
      )  
1は、主キー制約の追加
  ALTER TABLEの学生の追加の制約が主キーをpk_student_sno (SNOを);
  ALTER学生ドロップ制約表pk_student_sno。
    主キーの機能:null以外のユニーク
      1)主テーブルのフィールドを作成した後、プライマリとして使用する
      2)制約PK_テーブル最後尾作成する文のテーブルを使用して_フィールド名、主キー(フィールド)
      3)テーブルを作成した後ALTER TABLEテーブルの追加の制約PK_テーブル_フィールド名、主キー(フィールド名);
         制約名]ドロップ主要ALTER TABLE学生ドロップ制約、主キー;
2、null以外の制約を追加する
  ALTER TABLEの学生アドオン制約ck_student_snameチェック( SNAMEがnullではありません);
  ALTER学生ドロップ制約表ck_student_sname。
    直接テーブルのフィールドを作成した後、1)NOT NULLキーワード
    2)をテーブル作成文の最終表面における使用の制約ck_テーブル名を_フィールド名は(NOT NULLフィールド名はIS)チェック
    3)使用ALTER TABLEテーブル作成後表_(フィールド名がnullではない)ck_テーブルのフィールド名のチェックに制約を追加、
          削除、空でないALTER TABLEの学生のドロップ制約がnull以外の制約名をバインド;
3、チェック制約が追加される
  ALTER TABLEの学生アドオン制約ck_student_sageチェック(セージ<150 SAGEおよび> 0)
  ALTER学生ドロップの制約表ck_student_sage、
      追加のパリティ検査制約のセックス
  ALTER TABLE学生の追加制約ck_student_ssexチェック( ssex = ' M'またはssex = 'F')
  ALTER学生ドロップの制約表ck_student_ssex。
    1)直接テーブルの状態フィールドを作成した後(確認)番号、例えばSAGE(3)検査(SAGE <150およびSAGE> 0)
    2)を使用してテーブル内の最後尾の制約は、ステートメントは_確認フィールド名のテーブルを作成ck_します(条件)
    3)は、テーブルを作成した後ck_テーブル_列名は、条件(チェックALTER TABLEテーブル名の追加の制約)を使用して、
          削除、チェック制約ALTER TABLE学生ドロップ制約は、制約の名前をチェックしてください。
4、ユニーク制約の追加
       ALTER TABLEの学生の追加の制約をUNIQUE un_student_sqq(SQQ。)
  ; ALTER学生のドロップ制約テーブルun_student_sqq
    1)直接テーブルUNIQUEのフィールドの作成後。
    フィールド名のユニークな(フィールド名)_バックでテーブルを作成するために、テーブル制約un_文を使用して、2);
    3)を作成しますテーブルのテーブル名を使用してALTER TABLE _ユニークな追加の制約un_テーブルのフィールド名(フィールド名);
          ドロップ制約:ALTER TABLEテーブル名ドロップ制約のみ制約名;
5、外部キー制約
创建学生表
   テーブル学生(作成
         SNO数(10)主キー、
         SNAMEのVARCHAR2(100)NOT NULL、
         セージ番号(3)検査(セージ> 0とセージ<150)、
         (4)検査(ssex = 'ssexチャーを男'またはssex ='女」)は、
         sfavのVARCHAR2(500)、
         SQQのVARCHAR2(30)固有の、
         CID数(10)clazz(CNO)--references
         fk_student_cid外部キー(CID)を参照のclazz(CNO)を--constraintsを-外键
      )
  添加外键
  ALTER TABLEの学生の追加の制約は、外部キー(削除、設定されたヌルでCID)参照のclazz(CNO)fk_student_cid
  ALTER TABLE学生のドロップ制約をfk_student_cid 
创建班级表
      (テーブルclazzを作成します
       番号CNO(10)主キー、
       CNAME VARCHAR2(100)NOT NULL、
       VARCHAR2(300)cdesc
      )

外部キーを使用して:
  役割:サブテーブルのデータに挿入されたときに、親テーブルに存在しない、それが自動的に与えられています。
  コンセプト:テーブルの必要性のフィールドの値は、テーブルのフィールドの追加の値は、外部キー制約に依存するとき。
    前記サブテーブルのような活性依存テーブル、親テーブルとして従属表。子表の外部キーを追加します。
  使用方法:
    1)表中のサブフィールドの後には、直接の親テーブル名(フィールド)例えば:CID数(10)参照のclazz(CNO)参照
    制約が最後尾のフィールド作成_文でテーブルをfk_使用して2)サブテーブル名を外部キー(フィールド名)参照親テーブル名(フィールド名)の名前
    は、使用してテーブルを作成した後、3):ALTER TABLEテーブル名の追加制約fk_子テーブル_列名、外部キー(フィールド名)参照親テーブル名(フィールド名)
       外部キーの削除:ALTER TABLEテーブル名ドロップ制約外部キー制約を
  選択するために、外部キーを:
    一般的に、子表の外部キーとして親テーブルの主キーを選択しました。
  外部キー欠点:
    カスケード削除しない限り、あなたは直接、親テーブルのデータを削除することはできません
    DELETE CASCADE:外部キー制約を追加すると、削除カスケードの上でキーワードを使用
      使用:あなたは、親テーブルのデータを削除した場合は、自動的に子テーブルに関連するすべてのデータが削除されます。
      短所:履歴データの予備サブテーブルできません。
      削除セットのヌルにキーワードを使用し
        、親テーブルのデータを削除する際に、nullに子テーブル内のフィールドの値に依存します。
        注:従属子テーブルのフィールドが空でない制約を追加することはできません。

2次元テーブルのメンテナンス

新しいフィールドを追加します:
  ALTER TABLEテーブル名は、フィールド名タイプ追加
  ALTER TABLEの学生追加sphone番号(11 ) - 学生のテーブルに新しいフィールドを追加し
、元のフィールドを修正する
  フィールドタイプ変更する
    ALTER TABLEテーブル名は、フィールド名の新しいタイプの変更
    ALTERをテーブルの学生修正sphone VARCHAR2(11)
  フィールド名変更し
    、新たなフィールド名にALTER TABLEテーブル名のリネーム列フィールド名を
    電話にALTER TABLEの学生リネーム列sphone
  フィールド削除する
    ALTER TABLEテーブル名のドロップ列の列名
    ALTER TABLEの学生ドロップ列の携帯電話を
テーブルを変更名前
  の新しいテーブル名に元のテーブルの名前を変更
  student2にリネーム学生
ドロップテーブル
  のdrop tableテーブル名の
  ドロップテーブルの学生
 

おすすめ

転載: www.cnblogs.com/sunny-sml/p/12052433.html