Desencadenadores DML de la base de datos de ejemplo AdventureWorks
Actualizado: 14 de abril de 2006
En este tema se describen varios ejemplos de desencadenadores DML que se incluyen en la base de datos de ejemplo AdventureWorks. Estos desencadenadores DML están diseñados para aplicar las reglas de empresa de Adventure Works Cycles y contribuir a proteger la integridad de sus datos.
Para ver el texto de cada desencadenador en SQL Server Management Studio
- En el Explorador de objetos, busque la tabla en la que se definió el desencadenador y expanda la carpeta Desencadenadores.
- Haga clic con el botón secundario en el desencadenador que desee y luego haga clic en Incluir desencadenador como.
Establecer un campo después de una actualización
Desencadenador DLM uSalesOrderHeader
La tabla Sales.SalesOrderHeader
incluye la columna RevisionNumber
para reflejar el número de veces que se ha actualizado determinada fila, excluido el campo Status
. Después de una actualización, el desencadenador DML uSalesOrderHeader
incrementa el campo RevisionNumber
en uno o lo establece en uno si es NULL.
El desencadenador DML uPurchaseOrderHeader realiza en la tabla Purchasing.PurchaseOrderHeader la misma acción que el desencadenador DML uSalesOrderHeader realiza en la tabla Sales.SalesOrderHeader.
Llenar una tabla después de insertar y establecer un campo en otra tabla
Desencadenadores DML iPurchaseOrderDetail y uPurchaseOrderHeader
Cuando se insertan datos en la tabla PurchaseOrderDetail
, el desencadenador DML iPurchaseOrderDetail
también inserta parte de los datos insertados en la tabla Production.TransactionHistory
. Puesto que varios elementos de línea de PurchaseOrderDetail
forman un pedido de compra en la tabla PurchaseOrderHeader
, el campo Subtotal
de PurchaseOrderHeader
debe actualizarse cuando se produzca una inserción en PurchaseOrderDetail
. El desencadenador iPurchaseOrderDetail
agrega el campo LineTotal
de PurchaseOrderDetail
para un determinado pedido de venta y establece el campo Subtotal
de PurchaseOrderHeader
con dicha agregación.
Recuerde que cuando el desencadenador DML realiza una actualización en Purchasing.PurchaseOrderHeader
, provoca la activación del desencadenador de actualización uPurchaseOrderHeader
que existe en la tabla Purchasing.PurchaseOrderHeader
. Para obtener más información acerca de los desencadenadores que provocan la activación de otros desencadenadores, vea Usar desencadenadores anidados.
El desencadenador DML uPurchaseOrderDetail lleva a cabo las mismas acciones en las tablas TransactionHistory y PurchaseOrderHeader que iPurchaseOrderDetail, pero lo hace cuando se actualiza la tabla PurchaseOrderDetail y no cuando recibe una inserción.
Los desencadenadores DML iWorkOrder y uWorkOrder de la tabla Production.WorkOrder sólo insertan datos en la tabla TransactionHistory.
Vea también
Conceptos
Descripción de los desencadenadores DML
Ayuda e información
Obtener ayuda sobre SQL Server 2005
Historial de cambios
Versión | Historial |
---|---|
14 de abril de 2006 |
|