Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Firebird e Interbase (https://www.clubdelphi.com/foros/forumdisplay.php?f=19)
-   -   actualizar año en una fecha (https://www.clubdelphi.com/foros/showthread.php?t=35485)

elunicode 12-09-2006 15:29:26

actualizar año en una fecha
 
hola amigos quisiera actualizar el año en una fecha y no tengo la más mínima idea de como hacerlo, y me gustaría que me ayudaran, por favor :D

resulta que tengo una base de datos que por error alguien almacenó con fecha que por ejemplo "01/01/1906" quisiera actualizarlo a "01/01/2006"
sin embargo son aproximadamente 5000 registros, lógicamente hacerlo manual no sería óptimo, solamente como ven quiero cambiar el año de la fecha

Gracias...

dec 12-09-2006 15:38:02

Hola,

¿Algo como esto dices? ¿Porqué no dices qué base de datos usas y cómo trabajas con ella? Ayudaría a que te ayudasen...

Código SQL [-]
UPDATE campo_fecha SET campo_fecha = '01/01/2006' WHERE campo_fecha = '01/01/1906';

Bicho 12-09-2006 15:56:23

Cita:

Empezado por dec
¿Porqué no dices qué base de datos usas y cómo trabajas con ella? Ayudaría a que te ayudasen...

Hombre hay que darle la presunción de inocencia al nuevo no? Ya que ha puesto la pregunta en el foro de Interbase / Firebird, esperemos que con la base de datos que trabaje sea una de las dos, no? :D
Sino es así le mandamos a que se lea la Guía de Estilo

Por cierto elunicode bienvenido a los foros

Saludos

elunicode 12-09-2006 17:00:53

Estoy utilizando interbase
el campo Fecha que estoy empleando este tipo DATE

ya intenté realizar la siguiente consulta pero me da el sig. error
Conversion error from string "18/1/2006".


UPDATE TDATOS
SET FECHA =
CAST(EXTRACT (DAY FROM FECHA) AS VARCHAR(2)) || '/' ||
CAST(EXTRACT (MONTH FROM FECHA) AS VARCHAR(2)) || '/2006'
WHERE EXTRACT(YEAR FROM FECHA) = '1906';


y también ya intenté esto y nada

UPDATE TDATOS
SET FECHA =
CAST(
CAST(EXTRACT (DAY FROM FECHA) AS VARCHAR(2)) || '/' ||
CAST(EXTRACT (MONTH FROM FECHA) AS VARCHAR(2)) || '/2006' AS DATE)
WHERE EXTRACT(YEAR FROM FECHA) = '1906';

jachguate 12-09-2006 17:27:06

Hacelo así:

Código SQL [-]
Update tabla
   set fecha = (extract(year from fecha) + 100)
               ||'-'||extract(month from fecha)
               ||'-'||extract(day from fecha)
 where extract(year from fecha) = 1906;

Hasta luego.

;)

elunicode 12-09-2006 17:38:16

Muchas gracias jachguate la consulta fue un éxito...
:)


La franja horaria es GMT +2. Ahora son las 06:41:04.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi