SQLでXMLを使用する例を次に示します。認証されたユーザーは、すべてが同じDBMSではないさまざまなデータベースに対してデータの読み取りと書き込みを行います。A社のユーザーは、ローカルSQL Serverデータベースのデータを使用します。B社のユーザーは、リモートOracleデータベースのデータを使用します。等々。同じ基本データに対してそれぞれわずかに異なるスキーマを持つ12の異なるデータベース。
Webサイトの開発者は、リモートデータベースにストアドプロシージャを作成することができません。SQLは、Webアプリからデータベースに直接送信する必要があります。各データベースにはわずかに異なるSQL構文とスキーマがあるため、同じ操作(SELECT、INSERTなど)の12のデータベースごとに異なるSQLを使用する必要があります。
SQLステートメントをWebアプリに埋め込むための選択肢の1つは、SQLステートメントをXMLファイルに配置することです。各XMLファイルには、1ダースのデータベースの1つに対する一連のSQLステートメントが含まれています。このコードは、ログインしているユーザーがアクセスするデータベースを決定し、指定したXMLファイルから適切なSQLを取得します。
ストアドプロシージャと同様に、アプリケーションを停止または再コンパイルすることなく、XMLファイル内のSQLを更新できます。