読み方 : トランザクトシークェル / トランザクトエスキューエル
Transact-SQL【T-SQL】
Transact-SQLとは?
リレーショナルデータベース(RDB)の照会や操作に使われるSQLに手続き型プログラミングの機能を加えた拡張仕様の一つ。米マイクロソフト(Microsoft)社と米サイベース(Sybase)社(現SAP社)が共同開発した。両社の「SQL Server」「Adaptive Server Enterprise」などのデータベース管理システムで標準的に利用される。

標準SQLはデータの検索・抽出や挿入、更新、削除を記述する言語だが、条件分岐や繰り返し処理、変数といった手続き型の制御構造を持っていない。Transact-SQLはこれを補い、IF文やWHILE文、DECLARE文による変数宣言、TRY~CATCHによるエラー処理などの構文を提供する。DELETE文やUPDATE文の一部も独自に拡張されており、FROM句の内部でJOIN句を用いた複雑なテーブル指定が可能である。
Transact-SQLで記述したコードは、ストアドプロシージャやトリガー、ユーザー定義関数などの形でデータベースに保存し、実行することができる。ストアドプロシージャはあらかじめサーバ側に格納した処理を呼び出す仕組みで、同じSQL文を繰り返し送信する手間を省ける。トリガーはテーブルへのデータ変更を検知して自動的に処理を実行する機能で、データ整合性の維持や更新履歴の記録などに用いられる。トランザクション処理のための仕様も備えており、複数の更新処理を一つのまとまりとして扱い、途中で問題が発生した場合には変更を取り消せる。
Microsoft社の製品では、SQL Serverだけでなく「Azure SQL Database」「Azure Synapse Analytics」などのクラウドサービスでも共通して利用でき、オンプレミスとクラウドをまたいだ開発・運用に対応している。他の主要なデータベース製品は、Oracle Databaseの「PL/SQL」やPostgreSQLの「PL/pgSQL」のようにそれぞれ独自のSQL拡張を持っており、Transact-SQL固有の構文は他製品では動作しない。