SQLとは、DB2やOracle、MySQLなどの関係データベース(RDB: Relational DataBase)に対する代表的な問い合わせ言語(Query Language)である(「プログラミング言語」ではない。)。データの読み書き、データの定義などができる。現在の標準としては、「SQL」はそれ自体で完全な名称であって、なにかの略語ではない。
概要
1974年にIBMが開発したSEQUEL(Structured English Query Language)が前身。データベースのデータの参照や操作、(DML)、テーブルの操作、制約の追加・変更・削除(DDL)、ユーザ、権限の設定(DCL)に使われる。たとえば次のような文によってデータを操作する。
データベースに特化しているため、分岐や繰り返しなどの制御、(DB以外の)入出力などの機能はあまりない。
それぞれの関係データベース管理システム(RDBMS: Relational DataBase Management System)とそのSQLは強く結びついており、ANSIやISOに標準が提出されてはいるが、各RDBMSごとのSQLによる差が大きい。
Hello, World. は以下の通り。だが、全くデータベースを使っていないのであまり意味が無い。そしてOracleだとエラーになる。
出力はこんな感じ。
+---------------+
| Hello, World. |
+---------------+
| Hello, World. |
+---------------+
SQL文
SQLの体系にはさまざまな命令があり、それらはデータ定義言語(DDL: Data Definition Language)、データ操作言語(DML: Data Manipulation Language)、データ制御言語(DCL: Data Control Language)の3種類に大別される(ただし、DCLはDDLの一部だとする場合もある。)。使用頻度としては、DMLが圧倒的に多い。
ここでは、SQLの中でも特によく使われるものを紹介している。
命令 | 分類 | 用途 |
---|---|---|
CREATE |
DDL | 表やビュー(導出表)などを作成する。 |
DROP |
DDL | 表やビューなどを抹消する。 |
GRANT |
DCL | ユーザに権限を与える。 |
REVOKE |
DCL | ユーザから権限をはく奪する。 |
INSERT |
DML | 表にデータを追加する。 |
SELECT |
DML | 表やビューにある内容を読み取る。 |
UPDATE |
DML | 表にあるデータの内容を更新する。 |
DELETE |
DML | 表にあるデータを削除する。 |
フィクションにおけるSQL
長門有希の高速な呪文を逆再生すると出てくる言語としても知られる。
SELECT シリアルコード FROM データベース WHERE コードデータ ORDER BY 攻性情報戦闘 HAVING ターミネートモード
。
パーソナルネーム朝倉涼子を敵性と判定。当該対象の有機情報連結を解除する。
しかし、これは正しいSQL文としては成立していない。
関連動画
関連商品
関連項目
- 2
- 0pt