Código SQL:
Ver original--creamos la tabla alumno
CREATE TABLE alumno
(
nombre VARCHAR(20),
STATUS INT
)
--insertamos 3 registros con status=1
INSERT INTO alumno VALUES ('pedro',1)
INSERT INTO alumno VALUES ('juan',1)
INSERT INTO alumno VALUES ('jose',1)
-los datos de alumno vemos STATUS=1
SELECT * FROM alumno
nombre STATUS
-------------------- -----------
pedro 1
juan 1
jose 1
--se crea la tabla periodo
CREATE TABLE periodo
(
periodo datetime
)
--insertamos 2 datos en la tabla periodo
SELECT * FROM periodo
periodo
-----------------------
2012-11-02 11:41:57.303
2012-11-02 11:42:06.380
--creamos el trigger
CREATE TRIGGER [dbo].[trg_Periodo]
ON [dbo].[Periodo]
AFTER INSERT
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
-- Insert statements for trigger here
UPDATE Alumno SET
STATUS = 0
WHERE STATUS = 1
END
--insertamos un valor en la tabla periodo
INSERT INTO periodo VALUES (GETDATE()+30)
--vemos que en periodo hay un dato de mas y...
periodo
-----------------------
2012-11-02 11:41:57.303
2012-11-02 11:42:06.380
2012-12-02 11:44:13.773
--la tabla de alumnos quedaron todos con status=0
SELECT * FROM alumno
nombre STATUS
-------------------- -----------
pedro 0
juan 0
jose 0
--tu como lo estas haciendo? no tienes asi tus datos??