Skip site navigation (1) Skip section navigation (2)

Peripheral Links

Header And Logo

PostgreSQL
| The world's most advanced open source database.

Site Navigation

Search for
  Advanced Search

Re: chars => int


  • From: "Ricardo Martin Gomez" <rimartingomez(at)hotmail(dot)com>
  • To: lordjose84(at)gmail(dot)com, pgsql-es-ayuda(at)postgresql(dot)org
  • Subject: Re: chars => int
  • Date: Wed, 31 Jan 2007 15:55:09 +0000
  • Message-id: <BAY111-F397CC7B226F8AB35B51CB1A3A50(at)phx(dot)gbl>

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/




Home | Main Index | Thread Index

Privacy Policy | PostgreSQL Archives hosted by Command Prompt, Inc. | Designed by tinysofa
Copyright © 1996 – 2008 PostgreSQL Global Development Group