Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
A következőkre vonatkozik:SQL Server
Azure SQL Database
Az updategramok sablonok; Ezért átadhatod nekik a paramétereket. További információért a paraméterek sablonokra történő átadásáról lásd: Updategram Security Considerations (SQLXML 4.0).
Az updategramok lehetővé teszik, hogy a NULL paraméterértékként adj át. A NULL paraméter értékének átadásához megadjuk a nullvalue attribútumot. A nullérték attribútumhoz rendelt érték ekkor a paraméterérték. A updategramok ezt az értéket NULL-ként kezelik.
Megjegyzés:
A< sql:header> és <updg:header> esetén a nullértéket nem minősítettnek kell megadni; míg az< updg:sync-ben> a nullértéket minősítettnek kell megadni (például updg:nullvalue).
Példák
Ha az alábbi példák alapján szeretne munkamintákat létrehozni, meg kell felelnie az SQLXML-példák futtatására vonatkozó követelményeknek.
Mielőtt használnánk az updategram példákat, figyeljük meg a következőket:
- A példák alapértelmezett leképezést használnak (azaz a updategramban nincs megadva leképezési séma). A leképezési sémákat használó updategramokra további példákat az Updategramban (SQLXML 4.0) található jegyzetekkel ellátott leképezési séma megadása című témakörben talál.
A. Paraméterek átadása updategramnak
Ebben a példában a updategram megváltoztatja egy alkalmazott vezetéknevét a HumanResources.Shift táblában. A updategram két paramétert kap: ShiftID, amely egyedileg azonosítja a shiftet, és a Name.
<ROOT xmlns:updg="urn:schemas-microsoft-com:xml-updategram">
<updg:header>
<updg:param name="ShiftID"/>
<updg:param name="Name" />
</updg:header>
<updg:sync >
<updg:before>
<HumanResources.Shift ShiftID="$ShiftID" />
</updg:before>
<updg:after>
<HumanResources.Shift Name="$Name" />
</updg:after>
</updg:sync>
</ROOT>
A updategram teszteléséhez
Másold le a fenti updategramot a Notepadba, és mentsd UpdategramWithParameters.xmlfájlba.
Készítsd elő az SQLXML 4.0 tesztszkriptet (Sqlxml4test.vbs ) az ADO segítségével SQLXML 4.0 lekérdezések végrehajtásához az updategram végrehajtásához a következő sorok hozzáadásával a következők után
cmd.Properties("Output Stream").Value = outStream:cmd.NamedParameters = True ' CreateParameter arguments: Name, Type, Direction, Size, Value cmd.Parameters.Append cmd.CreateParameter("@ShiftID", 2, 1, 0, 1) cmd.Parameters.Append cmd.CreateParameter("@Name", 200, 1, 50, "New Name")
B. A NULL paraméterértékként történő átadása updategramnak
Updategram futtatásakor az "isnull" értéket hozzárendeljük ahhoz a paraméterhez, amelyet NULL-ra szeretnénk állítani. Az updategram átalakítja az "isnulll" paraméterértéket NULL-ra, és ennek megfelelően dolgozza fel.
A következő updategram egy alkalmazotti címet NULL-ra állít be:
<ROOT xmlns:updg="urn:schemas-microsoft-com:xml-updategram">
<updg:header nullvalue="isnull" >
<updg:param name="EmployeeID"/>
<updg:param name="ManagerID" />
</updg:header>
<updg:sync >
<updg:before>
<HumanResources.Employee EmployeeID="$EmployeeID" />
</updg:before>
<updg:after>
<HumanResources.Employee ManagerID="$ManagerID" />
</updg:after>
</updg:sync>
</ROOT>
A updategram teszteléséhez
Másold le a fenti updategramot a Notepadba, és mentsd UpdategramPassingNullvalues.xmlfájlba.
Készítsd elő az SQLXML 4.0 tesztszkriptet (Sqlxml4test.vbs ) az ADO segítségével SQLXML 4.0 lekérdezések végrehajtásához az updategram végrehajtásához a következő sorok hozzáadásával a következők után
cmd.Properties("Output Stream").Value = outStream:cmd.NamedParameters = True ' CreateParameter arguments: Name, Type, Direction, Size, Value cmd.Parameters.Append cmd.CreateParameter("@EmployeeID", 3, 1, 0, 1) cmd.Parameters.Append cmd.CreateParameter("@ManagerID", 3, 1, 0, Null)