SQL-概要
SQLはデータベースを操作するための言語です。これには、データベースの作成、削除、行のフェッチ、行の変更などが含まれます。SQLはANSI (米国規格協会)標準言語ですが、SQL言語にはさまざまなバージョンがあります。
SQLとは何ですか?
SQLは構造化照会言語であり、リレーショナルデータベースに格納されているデータを格納、操作、および取得するためのコンピューター言語です。
SQLは、リレーショナルデータベースシステムの標準言語です。MySQL、MS Access、Oracle、Sybase、Informix、Postgres、SQL Serverなどのすべてのリレーショナルデータベース管理システム(RDMS)は、標準のデータベース言語としてSQLを使用しています。
また、彼らは次のような異なる方言を使用しています-
- T-SQLを使用するMSSQL Server、
- PL / SQLを使用するOracle、
- SQLのMSAccessバージョンは、JET SQL(ネイティブ形式)などと呼ばれます。
なぜSQLなのか?
SQLは、次の利点があるため、広く普及しています。
ユーザーがリレーショナルデータベース管理システムのデータにアクセスできるようにします。
ユーザーがデータを説明できるようにします。
ユーザーがデータベース内のデータを定義し、そのデータを操作できるようにします。
SQLモジュール、ライブラリ、およびプリコンパイラを使用して、他の言語に埋め込むことができます。
ユーザーがデータベースとテーブルを作成および削除できるようにします。
ユーザーがデータベースにビュー、ストアドプロシージャ、関数を作成できるようにします。
ユーザーがテーブル、プロシージャ、およびビューに権限を設定できるようにします。
SQLの簡単な歴史
1970−IBMのDr.Edgar F. "Ted" Coddは、リレーショナルデータベースの父として知られています。彼はデータベースのリレーショナルモデルについて説明しました。
1974 −構造化照会言語が登場しました。
1978 − IBMは、Coddのアイデアの開発に取り組み、System / Rという名前の製品をリリースしました。
1986− IBMは、リレーショナルデータベースの最初のプロトタイプを開発し、ANSIによって標準化されました。最初のリレーショナルデータベースは、後にOracleとして知られるようになったRelationalSoftwareによってリリースされました。
SQLプロセス
RDBMSに対してSQLコマンドを実行している場合、システムは要求を実行するための最良の方法を決定し、SQLエンジンはタスクを解釈する方法を判断します。
このプロセスにはさまざまなコンポーネントが含まれています。
これらのコンポーネントは-
- クエリディスパッチャ
- 最適化エンジン
- クラシッククエリエンジン
- SQLクエリエンジンなど。
従来のクエリエンジンはすべての非SQLクエリを処理しますが、SQLクエリエンジンは論理ファイルを処理しません。
以下は、SQLアーキテクチャを示す簡単な図です-
SQLコマンド
リレーショナルデータベースと対話するための標準のSQLコマンドは、CREATE、SELECT、INSERT、UPDATE、DELETE、およびDROPです。これらのコマンドは、その性質に基づいて次のグループに分類できます。
DDL-データ定義言語
シニア番号 | コマンドと説明 |
---|---|
1 | CREATE データベース内に新しいテーブル、テーブルのビュー、またはその他のオブジェクトを作成します。 |
2 | ALTER テーブルなどの既存のデータベースオブジェクトを変更します。 |
3 | DROP テーブル全体、テーブルのビュー、またはデータベース内の他のオブジェクトを削除します。 |
DML-データ操作言語
シニア番号 | コマンドと説明 |
---|---|
1 | SELECT 1つ以上のテーブルから特定のレコードを取得します。 |
2 | INSERT レコードを作成します。 |
3 | UPDATE レコードを変更します。 |
4 | DELETE レコードを削除します。 |
DCL-データ制御言語
シニア番号 | コマンドと説明 |
---|---|
1 | GRANT ユーザーに特権を与えます。 |
2 | REVOKE ユーザーから付与された特権を取り戻します。 |