PL/SQLとは?正式名称と Archi構造の説明
⚡ スマートサマリー
PL/SQLは Oracleこれは、SQLのデータ操作機能とループ、条件分岐、オブジェクト指向機能を組み合わせた、SQLの手続き型拡張機能です。高性能な処理を実現するために、PL/SQLブロック、PL/SQLエンジン、データベースサーバーの3つの部分からなるアーキテクチャで動作します。

PL/SQLとは何ですか?
Oracle PL / SQLの PL/SQLは、SQL言語の拡張機能であり、SQLのデータ操作能力と手続き型言語の処理能力を組み合わせることで、強力なSQLクエリを作成します。PL/SQLは、データベースのセキュリティ、移植性、堅牢性を向上させることで、SQLステートメントのシームレスな処理を保証します。
PL/SQLとは、SQLを用いてコンパイラに「何をすべきか」を指示し、手続き型言語を用いて「どのようにすべきか」を指示する言語です。他のデータベース言語と同様に、ループ、条件分岐、オブジェクト指向の概念を用いることで、プログラマに高度な制御機能を提供します。PL/SQLの正式名称は「Procedural Language extensions to SQL(SQLに対する手続き型言語拡張)」です。
PL/SQL の完全な形式
PL/SQL は、「構造化照会言語の手続き型言語拡張」の略です。 PL/SQLは Oracle 法人の手続き延長 SQL Oracle リレーショナルデータベース。これは、高性能で高度に統合されたデータベース言語です。
PL/SQL開発者とは何ですか?
PL / SQL開発者 は、ソフトウェア開発に使用される統合開発環境です。 Oracle データベース環境を構築し、様々なデータベースタスクを容易に実行できます。PL/SQL Developer IDEは、エンドユーザーがデータベースタスクにかかる時間を節約できるGUIとプラグインを提供します。
ArchiPL/SQL の構造
以下の例は、PL/SQLアーキテクチャを図解したものです。

PL/SQLアーキテクチャは主に以下の3つのコンポーネントで構成されています。
- PL/SQLブロック
- PL/SQL エンジン
- データベースサーバ
PL/SQLブロック
- これは、実際のPL/SQLコードを含むコンポーネントです。
- コードは、論理的に分割された複数のセクションで構成されています。宣言を行う宣言セクション、ステートメントを処理する実行セクション、エラーを処理する例外処理セクションです。
- また、データベースサーバーとのやり取りに使用されるSQL命令も含まれています。
- すべてのPL/SQLユニットは次のように扱われます。 PL/SQLブロックそして、これがアーキテクチャの開始段階であり、主要な入力となる。
PL/SQLユニットには、以下のような種類があります。
- 匿名ブロック
- 演算
- 図書館
- 手順
- パッケージ本体
- パッケージ仕様
- トリガー
- タイプ
- タイプボディ
PL/SQL エンジン
- PL/SQLエンジンは、コードの実際の処理が行われるコンポーネントです。
- 入力データ内のPL/SQLユニットとSQL部分を分離します。
- 分離されたPL/SQLユニットは、PL/SQLエンジン自体によって処理されます。
- SQL部分はデータベースサーバーに送信され、そこでデータベースとの実際のやり取りが行われます。
- データベースサーバーとアプリケーションサーバーの両方にインストールできます。
データベースサーバ
- これはPL/SQLユニットの中で最も重要な構成要素であり、データを格納する部分です。
- PL/SQLエンジンは、PL/SQLユニットからのSQLを使用してデータベースサーバーとやり取りします。
- これは、入力されたSQL文を解析して実行するSQL実行エンジンで構成されています。
PL/SQLの特長と利点
- SQLが一度に1つのステートメントずつではなく、まとめて実行されるため、パフォーマンスが向上します。
- 高い生産性。
- SQLとの緊密な連携。
- 完全な携帯性。
- 厳重な警備。
- オブジェクト指向プログラミングの概念をサポートします。
- 拡張性と管理性。
- ウェブアプリケーション開発をサポートします。
- サーバーページ開発をサポートします。
PL/SQLの欠点
- PL/SQLのストアドプロシージャは、多くのメモリを消費します。
- ストアドプロシージャのデバッグ機能が欠けている。
- 基盤となるデータベースに変更を加える場合は、プレゼンテーション層にも変更を加える必要があります。
- バックエンド開発者とフロントエンド開発者の役割を完全に分離するものではない。
- HTML開発とPL/SQL開発を切り離して考えるのは難しい。
SQLとPL/SQLの違い
以下にいくつかの重要な違いを示します。 SQLとPL/SQL:
| SQL | PL / SQLの |
|---|---|
| SQLは、DML操作とDDL操作を実行するために使用される単一のクエリです。 | PL/SQLは、プログラムブロック、プロシージャ、関数など全体を記述するために使用されるコードのブロックです。 |
| それは宣言的であり、何をすべきかを定義するのであって、どのようにすべきかを定義するのではない。 | それは手順に関するものであり、物事をどのように行うべきかを定義するものです。 |
| 単一のステートメントとして実行されます。 | ブロック全体として実行されます。 |
| 主にデータ操作に使用されます。 | 主にアプリケーションを作成するために使用されます。 |
| データベースサーバーと直接やり取りします。 | ブロック自体には直接的な相互作用はありませんが、そのSQL部分は相互作用します。 |
| PL/SQLコードを含めることはできません。 | これはSQLの拡張機能なので、内部にSQLを含めることができます。 |
PL/SQLがどのように組み合わさっているかを見てきたので、次のステップは、その構成要素を学ぶことです。 PL/SQLブロック.
