SQL(構造化照会言語)とPL \ SQL(手続き言語/ SQL)の違い:SQLは非手続き構造化照会言語、です。PL / SQLは、OracleデータベースのSQL文のSQL手続き型言語拡張と呼ばれるプログラミング言語です。
Oracleデータベースのオブジェクトが何であるかを知っておく必要があるPL / SQLの基本的な構文、データベースオブジェクトを使用して、PL / SQL構文の導入前といえば。
DDL(データベース定義言語)とDML(データベース操作言語)理解:データベースオブジェクトを作成する簡単な用語は、データベース定義言語は、データベースオブジェクトは、データベース操作言語を使用して呼び出しますか。
/ * 現在のデータベースのデータベース・オブジェクトを照会* / SELECT OBJECT_TYPE FROM DBA_OBJECTSを基 BY OBJECT_TYPE。
Oracleデータベースオブジェクトは、次のカテゴリに分類されます。
表1表
官方描述:表は、Oracleデータベース内のデータ編成の基本単位です。表には、情報が記録されなければならないかについての重要な何かであるエンティティを、説明しています。例えば、従業員が主体である可能性があります。
/ * 常用语法* / CRETE TABLE [ スキーマ。] TABLE_NAME [ ORGANIZATION HEAP ](COLUMN_NAMEデータ型[ DEFAULTのexpreession ] )。 CREATE TABLE [ スキーマを。] TABLE_NAME AS サブクエリ; ALTER TABLE [ スキーマ。] TABLE_NAMEのADD (COLUMN_NAMEデータ型、...); ALTER TABLE [ スキーマを。] TABLE_NAMEのDROPのCLOUMNのCOLUMN_NAME。 ALTER TABLE [スキーマ。] RENAME CLOUMN A TABLE_NAME TO Bと、 DROP TABLE [ スキーマを。] table_nameのカスケード制約。 CRETE GLOBAL TEMPORARY TABLE [ スキーマ。] TABLE_NAME [ ORGANIZATION HEAP ](COLUMN_NAMEデータ型[ DEFAULTのexpreession ])[ ON DELETE {COMMIT | } ROWSを保存]。
2. INDEXインデックス
官方描述:インデックスは、時々高速データアクセスすることができるテーブルまたはテーブルクラスタに関連付けられた任意の構造、です。テーブルの1つ以上の列に索引を作成すると、テーブルからランダムに分布した行の小さなセットを取得するためのいくつかのケースで能力を獲得します。インデックスは、ディスクI / Oを削減する多くの手段の一つです。
/ * 常用语法* / CREATE [ UNIQUEを| BITMAP ] INDEX [ スキーマ。]索引名ON [ スキーマ。]テーブル名(カラム、...。)。 DROP INDEXの索引名。
3. CONSTRAINT制約
官方描述:整合性制約、データベース内の値を制限するルールを定義するには、制約を使用してください。
/ * 常用语法* / CREATE TABLEの TABLE_NAMEを(column1のデータ型はnull /ない ヌル、COLUMN2データ型のヌル/ない ヌル、... CONSTRAINTの CONSTRAINT_NAME [ UNIQUE | PRIMARY KEY ] (column1の、column2の、...)); ALTER TABLEを table_nameのADD CONSTRANT CONSTRAINT_NAME [ | UNIQUEを PRIMARY KEY ] (columu1、COLUMN2 ..)。 ALTER TABLEの CONSTRAINT_NAMEを [ ENABLE | DISABLE ] CONSTRAINT_NAME。 ALTER TABLEを DROP CONSTRAINTのCONSTRAINT_NAME。 ALTER TABLEの table_nameはCOLUMN_NAMEを修正 [ NOT ] NULL ; CREATE TABLEの table_name1を(COLUMN1データ型NULL / NOT NULL、COLUMN2データ型NULL / NOT NULL、... CONSTRAINTの CONSTRAINT_NAME FOREIGN KEY(COLUMN1)REFERENCESのtable_name2(COLUMN1))。 ALTER TABLEを table_nameのADD CONSTRANT CONSTRAINT_NAME FOREIGN KEY(カラム1)REFERENCESをtable_name2(COLUMN1))。 ALTER TABLEの DROP FOREIGN KEY CONSTRAINT_NAMEを。
4. VIEW表示
官方描述:ビューは、1つまたは複数のテーブルの論理的な表現です。本質的には、ビューが保存されたクエリです。ビューには、ベース・テーブルと呼ばれる、それが基づいているテーブルからデータを導出します。ベーステーブルは、テーブルまたは他のビューすることができます。
/ * 常用语法* / CREATE TABLEを [ OR REPLACE ] [ FORCE | NOFORCE ] VIEW [ スキーマ。] VIEWNAME [ (ALIAS1、alias2、...)] ASサブクエリ[ CHECKオプション[CONSTRAINT WITH ] constraintname] [ READ ONLY WITH [CONTRAINT constraintname ] ]。 DROP VIEW [ スキーマ。] VIEWNAME。
5. SYNONYMシノニム
官方描述:同義語は、スキーマ・オブジェクトの別名です。たとえば、テーブルやビュー、シーケンス、PL / SQLプログラム単位、ユーザー定義オブジェクト型、または他のシノニムのシノニムを作成することができます。シノニムは単なる別名であるため、データ・ディクショナリ内の定義以外に記憶域は必要ありません。
/ * 常用代码* / CREATE [ OR REPLACE ] [ PUBLIC ] SYNONYM [ スキーマ。] synonym_name FOR [ スキーマ。] OBJECT_NAME [ @dblink ] 。 DROP [ PUBLIC ] SYSNONYMの同義語。 ALTER SYNONYM sysnonym COMPILE;
6. SEQUENCEシーケンス
官方描述:シーケンスは、複数のユーザーが一意の整数を生成することができ、そこからスキーマ・オブジェクトです。シーケンスジェネレータは、数値データ・タイプの代理キーを生成するために、高度にスケーラブルでよく行う方法を提供します。
一般的な構文:
7. PROCEDUREストアドプロシージャ
官方描述:プロシージャが格納され、データベース・サーバで実行され、他のプログラミング・オブジェクトまたはアプリケーションから呼び出すことができるプログラミング・オブジェクトであるPL / SQLサブプログラムの一種です。
一般的な構文:
FUNCTIONの機能8.
官方描述:CREATE FUNCTION文が作成またはスタンドアロン関数またはデータベースに格納されているコールをspecification.Aスタンドアロン関数は関数(単一の値を返すサブプログラム)で置き換えます。
一般的な構文:
9. DBMS_SCHEDULERスケジュールされたタスク
官方描述:DBMS_SCHEDULERパッケージは、任意のPL / SQLプログラムから呼び出すことができるスケジューリング機能や手続きのコレクションを提供します。
一般的な構文:
10. PACKAGE 包
官方描述:CREATE PACKAGE文は、データベース内の単位として格納関連する手順、機能、及び他のプログラムオブジェクトのカプセル化された集合である保存されたパッケージのための仕様を作成または置き換えます。
11. TRIGGER触发器
官方描述:トリガーはPL / SQLを使用して定義されています。したがって、このセクションでは、いくつかの一般的な情報を提供しますが、構文とセマンティクスの詳細は、Oracle Database PL / SQL言語リファレンスを参照します。
一般的な構文:
12. DBLINKデータベース・コネクティビティ
官方描述:データベース・リンクを作成するには、CREATE DATABASE LINK文を使用します。データベース・リンクを使用すると、別のデータベース上のオブジェクトにアクセスすることを可能にする1つのデータベースのスキーマ・オブジェクトです。他のデータベースは、Oracle Databaseシステムである必要はありません。ただし、Oracleの異機種間サービスを使用する必要があり、Oracle以外のシステムにアクセスします。
一般的な構文:
13. SUBPROGRAMESサブルーチン
官方描述:PL / SQLサブプログラムを繰り返し呼び出すことができるという名前のPL / SQLブロックです。サブプログラムにパラメータがある場合は、その値は呼び出しごとに異なることができます。
一般的な構文:
14. [スケジュールジョブスケジューリングタスク
官方描述: Oracleデータベースを使用すると、タスクの数百または数千ものスケジューリングを簡素化するために、Oracle Schedulerの、企業のジョブスケジューラを含んでいます。Oracleのスケジューラ(スケジューラ)DBMS_SCHEDULER PL / SQLパッケージのプロシージャや関数によって実装されます。
一般的な構文:
これらは、Oracleデータベース・オブジェクトの導入され、その後、作成し、上記目的を達成するために使用するPL / SQLを使用するためにどのように補完します。
/ * PL / SQLの標準構造* /
HEADER - -代わりに DECLARE - -オプションを宣言 BEGIN - -必須実行 例外を- -オプションの例外ハンドリング ENDを ; - -必須