2009-12-20 17 views
5

Hace un tiempo leí el artículo de Trigger en SQL Server y decía que puedo usar la Tabla lógica "Actualizada" para las filas actualizadas ... Y obtuve un error :¿Cuál debería ser la tabla que contiene la fila actualizada para el activador de actualización

System.Data.SqlClient.SqlException: Invalid object name 'Updated'. 

Después de un tiempo de Google, descubrí un poco más puesto que dichos sólo 2 mesas lógicos disponibles son: inserted y deleted ...

estoy confundido ... ¿Qué debo usar ya que mi Trigger depende de la tabla actualizada que contiene la fila actualizada, y la usa para insertar en otra tabla o en la misma tabla con PK nuevo ...

Muchas gracias

Respuesta

9

Las dos tablas ficticias se llaman Inserted (disponible en INSERT y UPDATE disparadores) y Deleted (disponible en DELETE y UPDATE disparadores).

No hay tabla ficticia Updated en los desencadenadores de SQL Server.

Para un activador FOR UPDATE, la tabla Deleted contiene los valores anteriores, mientras que la tabla Inserted contiene los nuevos.

Marc

+0

Gracias por esto, marc. – DucDigital

Cuestiones relacionadas