リレーショナル・データベースはデータを表(テーブル)形式で表します。表はスキーマ・オブジェクトです。
表(テーブル)に関するSQL文の一覧を以下に示す。
ALTER TABLE は、表(テーブル)定義を変更するSQL文である。
COMMENT は、表(テーブル)にコメントを付けるSQL文である。
CREATE TABLE は、表(テーブル)を作成するSQL文である。
DELETE は、表(テーブル)からレコードを削除するSQL文である。
DROP TABLE は、表(テーブル)を削除するSQL文である。
INSERT は、表(テーブル)にレコードを挿入するSQL文である。
MERGE は、表(テーブル)のレコードを更新または挿入するSQL文である。
SELECT 表(テーブル)からレコードを問い合わせるSQL文である。
TRUNCATE TABLE は、表(テーブル)内のすべてのレコードを削除するSQL文である。
UPDATE 表(テーブル)のレコードを更新するSQL文である。
表(テーブル)に関するSQL*Plusコマンドの一覧を以下に示す。
COLUMN は、列の表示属性を設定するSQL*Plusコマンドである。
DESCRIBE は、表(テーブル)の定義を表示するSQL*Plusコマンドである。
表(テーブル)に関するデータ・ディクショナリ・ビューの一覧を以下に示す。なお、テーブルの最終更新日時はデータ・ディクショナリ・ビューに格納されていない。
ALL_CATALOG は、現在のユーザがアクセスできるテーブル、ビュー、シノニム、シーケンス及びクラスタを示すデータ・ディクショナリ・ビューである。
ALL_OBJECTS は、現在のユーザがアクセスできるオブジェクトを示すデータ・ディクショナリ・ビューである。
ALL_TABLES は、現在のユーザがアクセスできるテーブルを示すデータ・ディクショナリ・ビューである。
ALL_TAB_COLUMNS は、現在のユーザがアクセスできるテーブル、ビューおよびクラスタの列を示すデータ・ディクショナリ・ビューである。
DBA_CATALOG は、データベース内のすべてのテーブル、ビュー、シノニム、シーケンスおよびクラスタを示すデータ・ディクショナリ・ビューである。
DBA_OBJECTS は、データベース内のすべてのオブジェクトを示すデータ・ディクショナリ・ビューである。
DBA_TABLES は、データベース内のすべてのテーブルを示すデータ・ディクショナリ・ビューである。
DBA_TAB_COLUMNS データベース内のすべてのテーブル、ビューおよびクラスタの列を示すデータ・ディクショナリ・ビューである。
USER_CATALOG は、現在のユーザが所有するテーブル、ビュー、シノニム、シーケンスおよびクラスタを示すデータ・ディクショナリ・ビューである。
USER_OBJECTS は、現在のユーザが所有するオブジェクトを示すデータ・ディクショナリ・ビューである。
USER_TABLES は、現在のユーザが所有するテーブルを示すデータ・ディクショナリ・ビューである。
USER_TAB_COLUMNS は、現在のユーザが所有するテーブル、ビューおよびクラスタの列を示すデータ・ディクショナリ・ビューである。
表(テーブル)を操作するために必要なシステム権限の一覧を以下に示す。
ALTER ANY TABLE は、任意のスキーマの表を変更できるシステム権限である。
CREATE ANY TABLE は、任意のスキーマに表を作成できるシステム権限である。
CREATE TABLE は、自分のスキーマに表を作成できるシステム権限である。自分が作成したオブジェクトは、削除することもできる。
DROP ANY TABLE は、任意のスキーマの表を削除できるシステム権限である。
UPDATE ANY TABLE は、任意のスキーマの表を更新できるシステム権限である。
表(テーブル)を操作するために必要なオブジェクト権限の一覧を次に示す。
ALTER は、この表(テーブル)を変更できるオブジェクト権限である。
DUALとは、Oracleデータベースにあらかじめ用意されている擬似表である。
SQL> DESCRIBE DUAL
名前 NULL? 型
----------------------------------------- -------- ----------------------------
DUMMY VARCHAR2(1)
SQL>
他のDBMSと異なり、OracleデータベースのSELECT文はFROM句を省略できない。SELECT文のFROM句に指定するテーブルが無い場合、DUAL表を指定する。
システム時刻を取得する。
SQL> SELECT SYSDATE FROM DUAL;
SYSDATE
--------
09-10-09
SQL>
シーケンス番号を取得する。
SQL> SELECT sequence1.NEXTVAL FROM DUAL;
NEXTVAL
----------
1
SQL>