SQL Server - Creacion de un TRIGGER

 
Vista:

Creacion de un TRIGGER

Publicado por Miguel Angel (5 intervenciones) el 30/03/2006 09:27:46
Hola a Todos, escribo para ver si alguien puede echarme una mano en la creacion de un trigger en SQL Server que tengo que hacer y que no se por donde empezar ya que es la primera vez que tengo que hacer uno.
El trigger basicamente lo que tiene que hacer es que cuando se vayan a eliminar registros de una tabla compruebe que ese registro no existe en otras tablas con las que tiene relacion; asi en el caso de que exista no debe dejar borrarlo.Haber si alguien me puede indicar un poco por encima como comenzar por que tengo vagas ideas pero no se si voy encaminado o no con lo cual una poquita ayuda no me vendria mal, gracias.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Creacion de un TRIGGER

Publicado por Cecilia Colalongo (165 intervenciones) el 30/03/2006 13:26:48
No hace falta crear ningún trigger para un caso así, es solo una restricción de la base de datos (integridad referencial) y se controla automáticamente.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Creacion de un TRIGGER

Publicado por Miguel Angel (5 intervenciones) el 31/03/2006 09:19:55
Ya se que se puede hacer asi Cecilia pero es que esa restricción por varios motivos no se ha podido establecer, entonces lo que se quiere es que se haga a traves de un trigger y me gustaria que si alguien tiene alguna idea de como plantearlo me lo dijera, por favor

Muchas gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Creacion de un TRIGGER

Publicado por Carlos Ceballos (1 intervención) el 08/04/2006 19:33:51
Te puedo explicar como hacer el trigger y que busques los datos en las demas tablas, pero no sabria decirte como hacer para cancelar la eliminacion del registro en caso de que ese registro tenga relacion con otra tabla.

El trigger lo tienes que hacer en la tabla en la cual estas eliminando los datos

CREATE TRIGGER tuNombre_trigger ON Tu_Tabla
FOR DELETE
AS

Select Dato1 From Tabla_Relacionada T , Deleted D
Where T.campoclave = D.CampoClave

IF @@rowcount > 0
-- encontro datos y aqui es donde debes hacer algo para evitar que te elimine el registro de la tabla

Basicamente eso seria como hacer el trigger espero que te funcion o que te sirva de algo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar