概要:このチュートリアルでは、SQL言語の概要、標準SQLおよび主要なSQL方言について説明します。
SQL言語のイントロダクション
SQLは、リレーショナルデータベース管理システム(RDBMS)に格納されたデータを管理するように設計されたプログラミング言語です。
SQLは構造化照会言語の略語です。/ˈɛs kjuː ˈɛl/ または /ˈsiːkwəl/ と発音されます。
SQLは、データ定義言語、データ操作言語、データ制御言語で構成されています。
- データ定義言語はスキーマの作成と変更を扱います。例:CREATE TABLEステートメントを使用するとデータベースに新しいテーブルを作成できます。また、ALTER TABLEステートメントは既存のテーブルの構造を変更します。
- データ操作言語は、SELECTステートメントなどのデータの照会、およびINSERT、UPDATE、DELETEステートメントなどのデータの更新の構築を提供します。
- データ制御言語は、GRANTおよびREVOKEステートメントなどの、ユーザーの承認とセキュリティを扱うステートメントで構成されています。
SQL標準
SQLは1970年以来最初の商用データベース言語の1つです。それ以来、さまざまなデータベースベンダーが独自の製品にSQLを実装し、多少のバリエーションがあります。ベンダー間の整合性を高めるために、アメリカ規格協会(ANSI)は1986年に最初のSQL標準を発表しました。
その後、ANSIは1992年にSQL92およびSQL2として知られるSQL標準を更新し、1999年にはSQL99およびSQL3として再び更新しました。そのたびに、ANSIはSQL言語に新しい機能とコマンドを追加しました。
現在、SQL Standardは米国標準協会と国際標準化機構によってISO/IEC 9075標準として管理されています。最新のリリース標準はSQL:2011です。
SQL標準は、データベース製品全体のSQL構文構造と動作を公式化します。これは、MySQL、PostgreSQLなどのオープンソースデータベースでさらに重要になりますこれらは、大企業ではなくコミュニティによってRDBMSが主に開発されています。
SQL方言
コミュニティは常に、まだSQL標準に存在しない新しい機能と機能を要求するため、SQL標準が制定されていても、さまざまなデータベース製品に多くのSQL方言があります。
ANSIおよびISOはこれらの重要な機能をまだ開発していないため、RDBMSベンダー(またはコミュニティ)は独自の新しい構文構造を自由に発明できます。
以下は、SQLの最も一般的な方言です
- PL/SQLは、手続き言語/SQLを表します。これは、Oracle Database用にOracleによって開発されました。
- Transact-SQLまたはT-SQLは、Microsoft SQL Server用にMicrosoftによって開発されました。
- PL/pgSQLは、PostgreSQLで実装されたSQL方言と拡張機能で構成されるProcedural Language/PostgreSQLを表します。
- MySQLはバージョン5以降、独自の手続き型言語を持っています。MySQLはオラクルによって買収されたことに注意してください。
各チュートリアルでは、すべてのデータベースで有効なSQL構文の構造と挙動について説明します。特定のデータベースに例外がある場合は、それについても説明します。