構造化問合せ言語について知っておくべきこと

SQL(Structured Query Language)は、 リレーショナルデータベースと対話するために使用される一連の命令です。 実際、SQLはほとんどのデータベースが理解できる唯一の言語です。 このようなデータベースと対話するたびに、ソフトウェアはコマンド(マウスクリックかフォームエントリかにかかわらず)をデータベースが解釈する方法を知っているSQL文に変換します。 SQLには、データ操作言語(DML)、データ定義言語(DDL)、およびデータ制御言語(DCL)の3つの主要コンポーネントがあります。

Web上でのSQLの一般的な使用

データベース駆動型のソフトウェアプログラムのユーザーは、たとえそれがわからなくても、おそらくSQLを使用しています。 たとえば、データベース駆動の動的Webページ(ほとんどのWebサイトなど)は、フォームとクリックからユーザー入力を受け取り、次のWebページを生成するために必要なデータベースから情報を取得するSQLクエリを作成するために使用します

検索機能を備えた簡単なオンラインカタログの例を考えてみましょう。 検索ページは、検索タームを入力して検索ボタンをクリックするだけのテキストボックスを含むフォームで構成できます。 ボタンをクリックすると、Webサーバーは検索用語を含むレコードを製品データベースから取得し、その結果を使用して要求に固有のWebページを作成します。

たとえば、用語「Irish」を含む製品を検索した場合、サーバーは次のSQLステートメントを使用して関連製品を検索することがあります。

SELECT * FROM製品名WHERE 'LIKE'%irish% '

Translated、このコマンドは、製品名の任意の場所に "irish"という文字を含む "products"という名前のデータベーステーブルからレコードを取得します。

データ操作言語

データ操作言語(DML)には、最も頻繁に使用されるSQLコマンドのサブセットが含まれています.SQLコマンドのサブセットは、単純に何らかの形でデータベースの内容を操作するものです。 4つの最も一般的なDMLコマンドは、データベース(SELECT)コマンドから情報を取得し、データベースに新しい情報を追加し(INSERTコマンド)、データベースに現在格納されている情報を変更し(UPDATEコマンド)、データベースから情報を削除します。 DELETEコマンド)。

データ定義言語

データ定義言語(DDL)には、使用頻度の低いコマンドが含まれています。 DDLコマンドは、データベースの内容ではなく、データベースの実際の構造を変更します。 一般的に使用されるDDLコマンドの例には、 新しいデータベーステーブルの作成 (CREATE TABLE)、データベーステーブルの構造の変更(ALTER TABLE)、データベーステーブルの削除(DROP TABLE)などがあります。

データ制御言語

データ制御言語 (DCL)は、データベースへのユーザーアクセスを管理するために使用されます 。 2つのコマンドで構成されています。ユーザーのデータベース権限を追加するためのGRANTコマンドと、既存の権限を削除するためのREVOKEコマンドです。 これら2つのコマンドは、リレーショナルデータベースセキュリティモデルの中核をなすものです。

SQLコマンドの構造

幸いにもコンピュータプログラマではない私たちにとっては、SQLコマンドは英語に似た構文を持つように設計されています。 通常は、実行するアクションを記述するコマンド文で始まり、コマンドの対象を記述する句(コマンドの影響を受けるデータベース内の特定の表など)と、最後に追加の指示を与える一連の句が続きます。

多くの場合、SQL文を読み上げるだけで、コマンドが意図していることを非常によく理解できます。 このSQL文の例を読んでください。

graduation_year = 2014の学生から削除する

あなたはこの声明が何をするのか推測できますか? それはデータベースの学生のテーブルにアクセスし、2014年に卒業した学生のすべてのレコードを削除します。

SQLプログラミングの学習

この記事では、単純なSQLの例をいくつか見てきましたが、SQLは幅広く強力な言語です。 より詳細な紹介については、「 SQLの基礎 」を参照してください。