Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Los diagramas de actualización son plantillas; por consiguiente, se les pueden pasar parámetros. Para obtener más información acerca de cómo pasar parámetros a plantillas, vea Consideraciones de seguridad sobre los diagramas de actualización (SQLXML 4.0).
Los diagramas de actualización le permiten pasar NULL como un valor del parámetro. Para pasar el valor del parámetro NULL, especifique el atributo nullvalue. A continuación, el valor que se asigna al atributo nullvalue se proporciona como el valor del parámetro. Los diagramas de actualización tratan este valor como NULL.
[!NOTA]
En <sql:header> y <updg:header>, debería especificar nullvalue como no calificado; mientras que en <updg:sync>, debe especificar nullvalue como completo (por ejemplo, updg:nullvalue).
Ejemplos
Para crear ejemplos funcionales usando los ejemplos siguientes, debe cumplir los requisitos que se especifican en Requisitos para ejecutar los ejemplos de SQLXML.
Antes de usar los ejemplos del diagrama de actualización, tenga en cuenta lo siguiente:
- En los ejemplos se usa una asignación predeterminada (es decir, ningún esquema de asignación se especifica en el diagrama de actualización). Para obtener más ejemplos de diagramas de actualización que usan esquemas de asignación, vea Cómo especificar un esquema de asignación anotado en un diagrama de actualización (SQLXML 4.0).
A.Pasar parámetros a un diagrama de actualización
En este ejemplo, el diagrama de actualización cambia el apellido de un empleado en la tabla HumanResources.Shift. Se pasan dos parámetros al diagrama de actualización: ShiftID, que se usa para identificar de manera única un cambio, y Nombre.
<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>
Para probar el diagrama de actualización
Copie el diagrama de actualización anterior en el Bloc de notas y guárdelo en un archivo como UpdategramWithParameters.xml.
Prepare el script de prueba SQLXML 4.0 (Sqlxml4test.vbs) en Utilizar ADO para ejecutar consultas SQLXML 4.0 para ejecutar el diagrama de actualización agregando las siguientes líneas después de 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.Pasar NULL como un valor del parámetro a un diagrama de actualización
Para ejecutar un diagrama de actualización, el valor "isnull" se asigna al parámetro que se desea establecer en NULL. El diagrama de actualización convierte el valor del parámetro "isnulll" en NULL y lo procesa de forma apropiada.
El diagrama de actualización siguiente establece un puesto de empleado en NULL:
<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>
Para probar el diagrama de actualización
Copie el diagrama de actualización anterior en el Bloc de notas y guárdelo en un archivo como UpdategramPassingNullvalues.xml.
Prepare el script de prueba SQLXML 4.0 (Sqlxml4test.vbs) en Utilizar ADO para ejecutar consultas SQLXML 4.0 para ejecutar el diagrama de actualización agregando las siguientes líneas después de 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)
Vea también
Referencia
Consideraciones de seguridad sobre los diagramas de actualización (SQLXML 4.0)