Re: chars => int

From: "Ricardo Martin Gomez" <rimartingomez(at)hotmail(dot)com>
To: lordjose84(at)gmail(dot)com
Cc: pgsql-es-ayuda(at)postgresql(dot)org
Subject: Re: chars => int
Date: 2007-02-01 12:17:29
Message-ID: BAY111-F36D2FD639D36C5DD8CE1CDA3A40@phx.gbl
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

Jose: me parece que en algo estan equivocados sobre el tema de la
portabilidad y es aqui en donde la apli de ustedes tiene el problema. que
como te dije estan dedicando gran parte de los 80mb a procesar texto, hasta
parece una locura escribirlo.
el tema vendria + o - asi.
La apli para poder tener una buena utilizacion tiene que usar algun SQL
estandar que soporten todos los motores en el cual la vas a usar para
cualquier select. Yo pensaba que tu problema era para portar los datos de
una base a otra y por eso te recomende las funciones de conversion. En
cuanto a la apli lo unico que tiene que hacer al momento de guardar los
datos es validarlos segun el formato y poder insertarlos en la base de esta
manera. luego el select es estandar y los datos los tratas segun su tipo.
Espero poder ser claro y que me entiendas

Saludos
Martin.

>From: "José Manuel Ruiz" <josemanuelruizbaena(at)gmail(dot)com>
>Reply-To: lordjose84(at)gmail(dot)com
>To: "Ricardo Martin Gomez" <rimartingomez(at)hotmail(dot)com>
>Subject: Re: [pgsql-es-ayuda] chars => int
>Date: Thu, 1 Feb 2007 09:49:24 +0100
>
>Estas select como ves son distintas y no puedo ejecutar la de Oracle en
>PostgreSQL. Me refería a hacer select que se puedan ejecutar en cualquier
>motor de base de datos.
>
>Sé hacer select así como tu las has hecho, pero así cada una es de su padre
>y de su madre.
>
>El día 31/01/07, Ricardo Martin Gomez <rimartingomez(at)hotmail(dot)com> escribió:
>>
>>Jose:
>>los ejemplos de select serian algo asi
>>Postgresql
>>SELECT (DATE '2001-02-16')
>>
>>Oracle
>>SELECT TO_DATE('2001-02-16', 'YYYY-MM-DD') FROM DUAL;
>>
>>de Mysql no conozco casi nada pero consulta la documentacion que seguro va
>>a
>>estar ahi. en la seccion de tipos de datos o de funciones de conversion
>>
>>No se si te entendi bien, pero al momento de hacer portable los datos para
>>ir de un motor a otro deberias toquear la salida del archivo genera con
>>comando sql, y agregarle estas funciones de conversion propias de cada
>>motor. Espero que te sirva la info
>>
>>Saludos
>>Martin.
>>
>>
>>
>>
>>
>> >From: "José Manuel Ruiz" <josemanuelruizbaena(at)gmail(dot)com>
>> >Reply-To: lordjose84(at)gmail(dot)com
>> >To: "Ricardo Martin Gomez" <rimartingomez(at)hotmail(dot)com>
>> >CC: pgsql-es-ayuda(at)postgresql(dot)org
>> >Subject: Re: [pgsql-es-ayuda] chars => int
>> >Date: Wed, 31 Jan 2007 17:32:57 +0100
>> >
>> >Puedes explícame como hago una select usando las funciones de conversión
>>de
>> >datos para que cuando la ejecute en MySQL, Oracle y PostgreSQL funcione
>> >exactamente igual.
>> >
>> >
>> >El día 31/01/07, Ricardo Martin Gomez <rimartingomez(at)hotmail(dot)com>
>>escribió:
>> >>
>> >>ciertamente que si Jose, todos los motores tienen este tipo de
>>funciones
>> >>de
>> >>conversion por algun motivo, no?. por ejemplo seguramente en algunos
>> >>motores
>> >>tendras una funcion to_number() que quizas en otros motores se llamen
>> >>number() o ():number y asi con todos los tipos de datos String y Date.
>> >>Deberias leer bien y conocer bien estas funciones que son muy utiles y
>> >>vienen al dedillo para poder portar datos de un motor a otro.
>> >>
>> >>Saludos
>> >>Martin.
>> >>
>> >>
>> >>
>> >>
>> >>
>> >> >From: "José Manuel Ruiz" <josemanuelruizbaena(at)gmail(dot)com>
>> >> >Reply-To: lordjose84(at)gmail(dot)com
>> >> >To: "Ricardo Martin Gomez" <rimartingomez(at)hotmail(dot)com>
>> >> >Subject: Re: [pgsql-es-ayuda] chars => int
>> >> >Date: Wed, 31 Jan 2007 17:06:43 +0100
>> >> >
>> >> >¿crees que puedo hacerlo y que me funcione en todos los motores de
>>base
>> >>de
>> >> >datos posible?
>> >> >
>> >> >El día 31/01/07, Ricardo Martin Gomez <rimartingomez(at)hotmail(dot)com>
>> >>escribió:
>> >> >>
>> >> >>Jose Manuel: Leyendo atentamente lo que dice me parece que hay cosas
>> >>que
>> >> >>carecen de sentido,
>> >> >>por ejemplo el no aprovechar la funcionalidad de cada tipo de datos
>>y
>> >> >>dedicarte toda la vida a procesar texto desde tu apli, que
>>seguramente
>> >> >>gran
>> >> >>parte de esos 80mb son para hacer tales comparaciones como los
>>primeros
>> >> >>cuatro digitos son el año y asi.
>> >> >>Podrias leer un poco sobre las funciones de conversion de datos para
>> >>poder
>> >> >>hacer lo que tu dices un poco mas trasparente. y sin tantas
>> >>comparaciones
>> >> >>triviales
>> >> >>
>> >> >>Saludos
>> >> >>Martin.
>> >> >>
>> >> >>
>> >> >>
>> >> >>
>> >> >>
>> >> >> >From: "José Manuel Ruiz" <josemanuelruizbaena(at)gmail(dot)com>
>> >> >> >Reply-To: lordjose84(at)gmail(dot)com
>> >> >> >To: lordjose84(at)gmail(dot)com, pgsql-es-ayuda(at)postgresql(dot)org
>> >> >> >Subject: Re: [pgsql-es-ayuda] chars => int
>> >> >> >Date: Wed, 31 Jan 2007 16:46:33 +0100
>> >> >> >
>> >> >> >Sé que puede sonar muy raro, pero tengo en mis definición de datos
>> >>casi
>> >> >> >todas las tablas como string porque es el tipo de datos más
>>portable
>> >>a
>> >> >> >cualquier base de datos.
>> >> >> >
>> >> >> >Sé que así uso muy poco la optimización del motor de base de datos
>> >>para
>> >> >> >recorrer campos de otros tipos, pero me aseguro que puedo portar
>>la
>> >>base
>> >> >>de
>> >> >> >datos a cualquier otro sitio.
>> >> >> >
>> >> >> >No en todos los motores existe el tipo "timestamp" o por lo menos
>>no
>> >>en
>> >> >> >todos se llaman igual. Así que por portabilidad tengo que seguir
>>este
>> >> >> >esquema.
>> >> >> >
>> >> >> >Si uso un tipo fecha, no todas las fechas se almacenan igual, así
>>que
>> >> >> >tendría que controlar desde mi programa a qué base de datos estoy
>> >> >> >accediendo
>> >> >> >y tener en cuenta como trata esa base de datos el tipo fecha.
>> >> >> >
>> >> >> >Utilizando string sé que los 4 primeros dig son el año, los 2 sig
>>el
>> >> >>mes...
>> >> >> >así es mucho más fácil controlar los datos.
>> >> >> >
>> >> >> >Aunque sí, sé que no estoy optimizando el rendimiento de la base
>>de
>> >> >>datos.
>> >> >> >
>> >> >> >Pero estoy trabajando con una apli de 80 mb de código fuente y se
>>ha
>> >> >>estado
>> >> >> >trabajando así desde el principio. Será complicado cambiarlo todo.
>> >> >> >
>> >> >> >Un saludo.
>> >> >> >
>> >> >> >El día 31/01/07, Alvaro Herrera <alvherre(at)commandprompt(dot)com>
>> >>escribió:
>> >> >> >>
>> >> >> >>José Manuel Ruiz escribió:
>> >> >> >> > Gracias, lo encontré en inet antes que la respuesta. :P
>> >> >> >> >
>> >> >> >> > De todas formas un string lo trata de igual forma que un
>>numeric
>> >>a
>> >> >>la
>> >> >> >>hora
>> >> >> >> > de ordenar de mayor a menos o de saber cual de los dos es más
>> >> >>grande.
>> >> >> >> >
>> >> >> >> > Ej:
>> >> >> >> > 20070129 < 20070130
>> >> >> >>
>> >> >> >>Uff, tienes problemas serios de tipos de dato! Guardar fechas en
>> >> >>string
>> >> >> >>es bastante torpe; para eso existen los tipos de dato "timestamp
>> >>with
>> >> >> >>time zone" y otros. (Ya era torpe guardar un numero en un
>>string,
>> >>pero
>> >> >> >>esto le gana lejos).
>> >> >> >>
>> >> >> >>--
>> >> >> >>Alvaro Herrera
>> >> >> >>http://www.CommandPrompt.com/
>> >> >> >>The PostgreSQL Company - Command Prompt, Inc.
>> >> >> >>
>> >> >> >
>> >> >> >
>> >> >> >
>> >> >> >--
>> >> >> >"Comparte lo que sabes, aprende lo que no sepas"
>> >> >> >Todo por el conocimiento libre
>> >> >>
>> >> >>_________________________________________________________________
>> >> >>Descubre la descarga digital con MSN Music. Más de un millón de
>> >>canciones.
>> >> >>http://music.msn.es/
>> >> >>
>> >> >>
>> >> >>---------------------------(fin del
>>mensaje)---------------------------
>> >> >>TIP 3: si publicas/lees desde Usenet, por favor envía
>> >>"subscribe-nomail"
>> >> >> a majordomo(at)postgresql(dot)org para que tus mensajes puedan
>>llegar
>> >> >> a los suscriptores de la lista
>> >> >>
>> >> >
>> >> >
>> >> >
>> >> >--
>> >> >"Comparte lo que sabes, aprende lo que no sepas"
>> >> >Todo por el conocimiento libre
>> >>
>> >>_________________________________________________________________
>> >>Acepta el reto MSN Premium: Correos más divertidos con fotos y textos
>> >>increíbles en MSN Premium. Descárgalo y pruébalo 2 meses gratis.
>> >>
>> >>
>>http://join.msn.com?XAPID=1697&DI=1055&HL=Footer_mailsenviados_correosmasdivertidos
>> >>
>> >>
>> >
>> >
>> >--
>> >"Comparte lo que sabes, aprende lo que no sepas"
>> >Todo por el conocimiento libre
>>
>>_________________________________________________________________
>>Descubre la descarga digital con MSN Music. Más de un millón de canciones.
>>http://music.msn.es/
>>
>>
>>---------------------------(fin del mensaje)---------------------------
>>TIP 8: explain analyze es tu amigo
>>
>
>
>
>--
>"Comparte lo que sabes, aprende lo que no sepas"
>Todo por el conocimiento libre

_________________________________________________________________
Dale rienda suelta a tu tiempo libre. Mil ideas para exprimir tu ocio con
MSN Entretenimiento. http://entretenimiento.msn.es/

In response to

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Leonel Nunez 2007-02-01 15:25:35 Re: chars => int
Previous Message José Manuel Ruiz 2007-02-01 08:49:24 Re: chars => int