Triggers

07/03/2006 - 10:11 por Japhet Perez Atristain | Informe spam
Buen Dia

Grupo, tengo una duda de novato (probablemente)...

Necesito crear un trigger en cuanto BORRE un valor en
la tabla "Clientes", y este lo que tiene que hacer es que al
borrar debera verificar que este cliente no exista en la tabla
de "Facturas" por medio de la llave "CliId"...

Alguien me puede ayudar y decirme como crear este trigger???

Saludos

-
Ing. Japhet Perez Atristain
Advanced Engineering Systems
Puebla
Mexico
"El Rock & Roll es un deporte, PRACTICALO!!!" -Alex Lora-

Preguntas similare

Leer las respuestas

#1 Carlos Sacristán
07/03/2006 - 11:01 | Informe spam
Esto ya lo hace por tí el motor si tienes definido integridad
referencial (sin borrado en cascada, claro) entre las dos entidades.

De todos modos, si por cualquier razón no quieres (o no puedes)
integridad entre dichas tablas, yo no lo haría dentro del trigger, sino que
crearía un procedimiento almacenado que realizara la validación de la que
hablas y otras más que pudieran aparecer más adelante.

A mí personalmente no me gustan los triggers porque en la mayoría de los
casos lo único que se consigue es complicar la administración de la base de
datos y encontrarte en el futuro con problemas por tener código "oculto" en
el diseño de las tablas.


Un saludo

-
"Sólo sé que no sé nada. " (Sócrates)

"Japhet Perez Atristain" <japhetp (arroba) prodigy (punto) net (punto) mx>
escribió en el mensaje news:#
Buen Dia

Grupo, tengo una duda de novato (probablemente)...

Necesito crear un trigger en cuanto BORRE un valor en
la tabla "Clientes", y este lo que tiene que hacer es que al
borrar debera verificar que este cliente no exista en la tabla
de "Facturas" por medio de la llave "CliId"...

Alguien me puede ayudar y decirme como crear este trigger???

Saludos

-
Ing. Japhet Perez Atristain
Advanced Engineering Systems
Puebla
Mexico
"El Rock & Roll es un deporte, PRACTICALO!!!" -Alex Lora-


Respuesta Responder a este mensaje
#2 uRkEl!!
07/03/2006 - 12:41 | Informe spam
La manera mas sencilla es, desde el Enterprise Manager, hacer click-derecho
sobre la tabla "Clientes" y ir a Todas las tareas > Manage triggers. Desde
alli podrás crear uno, que deberá ser algo como esto:

CREATE TRIGGER Nombre_Del_Trigger ON dbo.Clientes
FOR DELETE
AS
DECLARE @CliID VARCHAR(10) -- o el tipo de datos que necesites
SET @CliID = (SELECT CliID FROM deleted)
IF EXISTS (SELECT * FROM Facturas WHERE CliID=@CliID)
BEGIN
END


¡¡Salud!!

"Japhet Perez Atristain" escribió:

Buen Dia

Grupo, tengo una duda de novato (probablemente)...

Necesito crear un trigger en cuanto BORRE un valor en
la tabla "Clientes", y este lo que tiene que hacer es que al
borrar debera verificar que este cliente no exista en la tabla
de "Facturas" por medio de la llave "CliId"...

Alguien me puede ayudar y decirme como crear este trigger???

Saludos

-
Ing. Japhet Perez Atristain
Advanced Engineering Systems
Puebla
Mexico
"El Rock & Roll es un deporte, PRACTICALO!!!" -Alex Lora-



Respuesta Responder a este mensaje
#3 Japhet Perez Atristain
07/03/2006 - 15:05 | Informe spam
Muchas gracias a los 2!!!


Saludos.
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida