
añadir años con date add a datos entrantes
Publicado por javier (9 intervenciones) el 28/12/2016 13:06:06
Buenos días, me he encontrado un problema grave en los programas enlazados a la base de datos, para solucionarlo la única manera que se me ha ocurrido es retrasar la fecha de todos los ordenadores conectados a la base de datos 5 años (pasaría de 2017 a 2012). Pero sin embargo los datos que almacene la base de datos deben estar en el año vigente, en este caso 2017, por lo que necesito que a todo dato que le entre automáticamente le sume 5 años en las columnas necesarias, y de igual manera debo sumarle 5 años a la fecha actual del servidor sql. He probado el siguiente código:
Pero me devuelve error de que la columna fechor es ambigua (la mayoría de columnas son usadas en distintas tablas), tengo poca experiencia en programación sql y ando bastante perdido.
Un saludo y gracias
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
CREATE TRIGGER dbo.fechascob
ON dbo.cob
AFTER INSERT, UPDATE
AS
BEGIN
SELECT
cob.fechor
cob.fechorret
cob.fechoranu
FROM
cob;
UPDATE v
SET
v.fechor = DATEADD (YEAR, 5, fechor),
v.fechorret = DATEADD (YEAR, 5, fechorret),
v.fechoranu = DATEADD (YEAR, 5, fechoranu)
FROM
INSERTED i
INNER JOIN cob v ON (i.fechor = v.fechor),
INNER JOIN cob v ON (i.fechorret = v.fechorret),
INNER JOIN cob v ON (i.fechoranu = v.fechoranu)
END
GO
Pero me devuelve error de que la columna fechor es ambigua (la mayoría de columnas son usadas en distintas tablas), tengo poca experiencia en programación sql y ando bastante perdido.
Un saludo y gracias
Valora esta pregunta


0