From: | Mario Guerrero <chimuelo22(at)yahoo(dot)es> |
---|---|
To: | Jaime Casanova <systemguards(at)gmail(dot)com>, "pg_espaol" <pgsql-es-ayuda(at)postgresql(dot)org> |
Subject: | isDate() - isnumeric() |
Date: | 2005-12-26 15:30:03 |
Message-ID: | 20051226153003.53840.qmail@web86805.mail.ukl.yahoo.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
Hola, lo que quiero hacer son unas validaciones y evitar errores cuando haga cast(). La tabla temporal TablaA(a varchar(10), b varchar(10))tiene los datos que subo desde un plano con la funcion COPY.
TablaA
a | b
'1' |'12/12/2005'
'2' |'XXX XXX'
'X' |'13/12/2005'
'3' |'14/12/2005'
Ahora quiero validar estos datos de la TablaA, por ejemplo que todos los datos del campo a sean numeros, que todos los datos del campo b sean fechas. Esta validacion la quiero hacer antes de hacer un cast() y pasar esos datos a la tabla persistente TablaB (campo1 int, campo2 date).
Es decir si hago:
insert into TablaB(campo1,campo2)
select cast(a as int), cast(b as date) from TablaA.
Quiero que deje en NULL los valores que no puede convertir, pero no que genere un error y termine el proceso para obtener lo siguiente:
TablaB
a | b
'1' |'12/12/2005'
'2' |
|'13/12/2005'
'3' |'14/12/2005'
Mario Guerrero.
Jaime Casanova <systemguards(at)gmail(dot)com> escribió:
On 12/26/05, Mario Guerrero wrote:
> Hola grupo,
>
> Como puedo hacer en postgres para hacer algo similar a las funciones
> isDate(NombreAtributo) ó isnumeric(NombreAtributo) de SQLServer. Es decir,
> como parametro le envio un atributo de una relacion y la funcion retorna un
> valor booleano, 1 si el valor enviado es del mismo tipo o 0 en caso
> contrario.
>
>
> Mario Guerero.
>
parece como que tendrias que hacerla tu mismo leyendo de pg_attribute...
BTW, como para que quieres algo asi? yo pensaria que sabiendo el
nombre del atributo deberias saber el tipo de dato...
--
Atentamente,
Jaime Casanova
(DBA: DataBase Aniquilator ;)
---------------------------------
Correo Yahoo!
1GB de capacidad gratis y más privacidad. Infórmate aquí
http://correo.yahoo.es
From | Date | Subject | |
---|---|---|---|
Next Message | cristian | 2005-12-26 15:46:31 | Problema, postgres JDBC |
Previous Message | Tutopia | 2005-12-26 15:03:25 | RV: COPY desde el cliente |