SQLとは

 SQL(Structured English Query Language)とは、リレーショナルデータベース管理システムと対話するための言語です。

 まずデータベースとは何かしらの目的やルールに基づいて整理されたデータのまとまりのことです。そのデータベースの中には、階層型やネットワーク(網)型があります。その中で最もよく使われるのがリレーショナル型のデータベースです。

 リレーショナルデータベースは、行(row)と列(column)で表されたテーブル同士が連携して動く仕組みを持っています。

 

SQLの概要

 データベース言語であるSQLはデータベースに対して、データの挿入のような要求を呼びかける際に使われます。このようにデータベースに要求を出す命令文クエリ(問い合わせ)と言います。クエリの中身であるSQL文はユーザーが作成する場合やソフトウェアが作成してくれる場合があります。

 データベースに対する連続した複数の処理を1つのプログラムにまとめて、データとともに保存できるようにした機能ストアドプロシージャと言います。現在ではSQLにこのようなプログラミング機能が加わっています。

 

制約

 登録するデータを正しい状態に保つために様々な制約というものが存在します。同姓同名の人物でも区別できるように学生番号を振った際、この学生番号のことを主キー(Primary Key)と言います。また複数の列(column)を組み合わせて1つのキーとした場合は、これを連結キー(複合キー)と言います。「県」と「市」を別々の列で登録したとしてもそれぞれの列を連結キーとして設定しておくと、1つの地域を特定できるようになります。制約には他にも、データに一意性を持たせるUNIQUE、空の値を禁止するNOT NULL、条件に合わないデータを禁止するCHECK(条件式)などがあります。

 

SQLクエリ(SQL文)の7つの種類

 データベースに対する命令文の種類には以下のようなものがあります。

  1. CREATE:データベース・テーブル作成
  2. ALTER:データベース・テーブル定義変更
  3. DROP:データベース・テーブル削除
  4. SELECT:データ検索
  5. UPDATE:データ更新
  6. INSERT:データ挿入
  7. DELETE:データ削除

 

 プログラミング初心者なりにSQLについて頭を整理してまとめてみました。とりあえずSQLは「言語」であり、クエリは「命令文」です。

 もし間違っていることを言っていたら指摘していただけるとありがたいです。参考にした記事はこちらです。

SQLって何? - Qiita