一般的なデータベースオブジェクト
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 NUMBER(2 )、 DNAME VARCHAR2(14 )、 LOC VARCHAR2(13 ) );
データ型は、
テーブルを作成するために、サブクエリを使用します
- 組み合わせ表や挿入データを作成するために使用する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 VARCHAR2(9 ) );
列を変更します。
- あなたは、列のデータ型、サイズ、およびデフォルト値を変更することができます
- デフォルト値への変更は、テーブルにのみ将来の変更に影響を及ぼし
ALTER TABLE dept80 MODIFY( LAST_NAME VARCHAR2(30 ) );
ALTER TABLE dept80 MODIFY( 給与NUMBER(9、2)DEFAULT 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。