Oracleのテーブルを作成し、管理するためのシリアルX

一般的なデータベースオブジェクト

Oracleデータベーステーブル

ユーザー定義テーブル:

  •     テーブルのセットを作成し、維持するために、ユーザー自身
  •     これは、ユーザーが必要とする情報が含まれています
  •     以下のような:USER_TABLES SELECT * FROM;ビューのユーザーが作成したテーブル


データ・ディクショナリ:

  •     Oracleサーバーによって自動的に作成されたテーブルのセット
  •     データベースには、情報が含まれています

クエリデータ辞書

、ユーザ定義のテーブルを表示します。

選択する
     TABLE_NAME
FROM      
     USER_TABLES;

ユーザ定義データベースオブジェクトの様々なを見ます

SELECT  DISTINCT 
    OBJECT_TYPE
FROM       
    USER_OBJECTS;

テーブル、ビュー、シノニム、およびユーザ定義のシーケンスを参照してください。

SELECT    
     * 
FROM      
    USER_CATALOG。

命名

テーブルと列の名前を:

  • 私たちは、文字で始まる必要があります
  • あなたは1-30文字の間でなければなりません
  • それが唯一のAからZ、aからz、0-9、_、$、#が含まれている、としなければなりません
  • そして、他のオブジェクトは、ユーザー定義の名前が重複してはなりません
  • Oracleは予約語であってはなりません


CREATE TABLE文を

持っている必要があります。

  • CREATE TABLE権限を
  • 収納スペース
CREATE  TABLE  [ スキーマを。] データ型[ DEFAULT式expr ] [ 、... ])。

あなたは指定する必要があります。

  • テーブル名
  • 列名、データ型、サイズ、

表作成

構文

CREATE  TABLEのDEPTを?
    DEPTNO    NUMBER2 )、
    DNAME     VARCHAR214 )、
    LOC       VARCHAR213 
);


データ型は、


テーブルを作成するために、サブクエリを使用します

  • 組み合わせ表や挿入データを作成するために使用するASサブクエリオプション
  • 1対1の対応にクエリの列とサブの列を指定します
  • 列名とデフォルト値で列を定義しています
CREATE  TABLEの テーブルを
        [ (カラム、カラム...)] 
ASサブクエリ。


既存のテーブルをコピーします。

作成 テーブル EMP1 として 選択 *  から従業員を。
作成  EMP2をとして 選択 *  から従業員1 = 2 ; 

注:EMP2は、空のテーブルを作成します。


サブクエリを使用して、たとえば、テーブルを作成します。

CREATE  TABLEをdept80
     AS 
        SELECT
            従業員ID、
            苗字、
            給与*  12 annsal、
            入社年月日?
        から
            従業員?
        WHERE 
            DEPARTMENT_ID =  80

ALTER TABLE文の

ALTER TABLE文を使用して:

  • 新しい列を追加します。
  • 既存の列を変更します。
  • 新しい列がデフォルト値を定義するために追加されます
  • 行を削除
  • テーブルの列名を変更

ALTER TABLEステートメント

  • ALTER TABLE文は、変更、追加、または削除列の構文
ALTER  TABLEの テーブル
ADDデータ型[ DEFAULT式expr ] 
           [ 、列データ型] ...)。
ALTER  TABLEの テーブル
MODIFY(データ型[ DEFAULTの式expr ] 
           [ 、列データ型] ...)。
ALTER  TABLEの テーブル
のDROP  COLUMNの   COLUMN_NAME。
ALTER  TABLE table_nameのRENAME COLUMM old_column_name
 TO new_column_name

新しい列を追加

  • 新しい列を追加するADD句を使用します
  • 新しい列は表の最後の列であります
ALTER  TABLEの DEPTのADD 
    JOB_ID    VARCHAR29 
);

列を変更します。

  • あなたは、列のデータ型、サイズ、およびデフォルト値を変更することができます
  • デフォルト値への変更は、テーブルにのみ将来の変更に影響を及ぼし
ALTER  TABLE dept80 MODIFY(
    LAST_NAME VARCHAR230 
);
ALTER  TABLE dept80 MODIFY(
    給与NUMBER92DEFAULT  1000年
)。


行を削除

  • もはや必要を削除しないで使用する列のDROP COLUMN句。
ALTER  TABLEの  dept80
 のDROP  COLUMNの   JOB_ID。

列の名前を変更します

  • 句リネーム列に使用RENAMEのCOLUMN [TABLE_NAME]
ALTER  TABLE   dept80
RENAMEのCOLUMNは   JOB_ID TO ID。

削除テーブル

  • そして、データ構造が削除されます
  • 提出ランニングに関する事項
  • 関連するすべてのインデックスが削除されました
  • DROP TABLE文はロールバックすることはできません
DROP  TABLEはdept80。
表はドロップされました。

表空
TRUNCATE TABLE文を:

  • テーブル内のすべてのデータを削除します。
  • リリーステーブル収納スペース
TRUNCATE  TABLEの detail_dept。
  • TRUNCATE文はロールバックすることはできません
  • あなたがロールバックすることができ、削除データにDELETEステートメントを使用することができます

コントラスト:

  削除 からEMP2。
  選択 *  からEMP2。
  ロールバック;
  選択 *  から EMP2。

オブジェクトの名前を変更します

  • RENAMEステートメントは、実行テーブル、ビュー、シーケンス、またはシノニムの名前を変更するには
  • これは、オブジェクトの所有者でなければなりません
DEPT RENAME TOの detail_dept。

おすすめ

転載: www.cnblogs.com/loaderman/p/11738296.html