Mellékelt példa felhasználása előtt szükséges, hogy az SQL szervert konfiguráljuk arra, hogy képes legyen a Northwind adatbázis tartalmát XML-ben szolgáltatni. Ennek részletes leírása az alább hivatkozott cikkünkben megtalálható.
További szükséges előkészítő lépés, hogy az alábbi tárolt eljárást hozzuk létre a Northwind adatbázisba:
CREATE PROCEDURE CustomerByCountry (@CountryValue nvarchar(15))
AS
SELECT '<items>'
SELECT *
FROM Customers
WHERE Country = @CountryValue
FOR XML AUTO
SELECT '</items>'
GO
Ez lesz az a tárolt eljárás, melyet meghívunk majd saját programunkból. Mielőtt ennek nekiállnák tegyünk egy próbát, hogy ellenőrizzük azt, hogy a fenti előkészítő lépések rendben megtörténtek-e. Ehhez indítsunk el egy Internet Explorer-t, majd írjuk a következő címet:
http://localhost/Northwind?sql=execute CustomerByCountry @CountryValue=Spain
A localhost természetesen attól függően változhat, hogy milyen szerveren érhető el az MS SQL szerver.
Amint az látható is a fenti címből, a tárolt eljárás aktivizálására az sql paraméterben az execute kulcsszó után tudjuk megadni annak a tárolt eljárásnak a nevét, amelyet futtatni szeretnénk. Ha a tárolt eljárás paramétereket is vár, akkor ezeket szintén itt sorolhatjuk fel úgy, hogy paraméterneve után egy egyenlőség jellel elválasztva megadjuk annak aktuális értékét.
Megfigyelhető a saját tárolt eljárásunknál, hogy a tényleges adatlekérdező select előtt van egy SELECT '<items>', majd a végén egy SELECT '</items>'. Erre azért van szükség, hogy a generált XML-nek megadjuk a főcsomópontját mely között az eredmény megjelenik. Ezt megtehetnénk úgy is, hogy a lekérdezésben egy root paramétert is hozzáteszünk, amelynek értéke lesz a főcsomópont neve:
http://localhost/Northwind?sql=execute CustomerByCountry @CountryValue=Spain&root=items
Harmadik megoldásként alkalmazható még az is, hogy egy-egy ilyen lekérdezésnél egyidejűleg többet is futtathatunk. Ezek felsorolását csupán pontosvesszővel kell jeleznünk:
http://localhost/Northwind?sql=select ‘<items>’; execute CustomerByCountry @CountryValue=Spain; select ‘</items>’
A programból történő web-es kérés megvalósítását a szükséges url létrehozása után a GetWebContent nevű belső függvényünkre bízzuk, melyet szintén az alább hivatkozott cikkünkben készítettük el és írtuk le részleteit.