ストアドプロシージャは、バージョン 5.0 開発ツリーで実装されます。 See 項2.3.4. 「開発ソースツリーからのインストール」。
この試みは SQL-99 に基づくもので、Oracle PL/SQL に類似した(ただし、同じではありません)基本構文を使用します。これに加え、外部言語でフックする SQL-99 フレームワークも実装します。
ストアドプロシージャは、サーバでコンパイルし、格納することができる SQL コマンドのセットです。これが行われると、クライアントはクエリ全体の再発行を繰り返す必要がなく、ストアドプロシージャを参照することができます。その結果、クエリを一度解析するだけで済み、サーバとクライアント間で送信される情報が少なくなるので、全体的なパフォーマンスが向上します。また、サーバに関数のライブラリを作成することで、概念レベルを高めることもできます。ただし、サーバ側で行われる作業が増え、クライアント(アプリケーション)側で行われる作業が少なくなるので、ストアドプロシージャによってデータベースサーバシステムの負荷が高くなります。
トリガは、MySQL バージョン 5.1 で実装される予定です。トリガは、実質的にはストアドプロシージャの一種で、特定のイベントが発生すると呼び出されます。たとえば、トランザクションテーブルからレコードが削除されるたびにトリガされるストアドプロシージャや、すべてのトランザクションが削除されると、顧客テーブルから対応する顧客を自動的に削除するストアドプロシージャを設定することができます。
This is a translation of the MySQL Reference Manual that can be found at dev.mysql.com. The original Reference Manual is in English, and this translation is not necessarily as up to date as the English version.