Ver Mensaje Individual
  #2 (permalink)  
Antiguo 01/07/2010, 05:49
Avatar de gnzsoloyo
gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 5 meses
Puntos: 2658
Respuesta: Tipos de datos comunes a todos los SGBD

Cita:
¿Hay algún conjunto de tipos de datos aplicable a cualquier SGBD? Imagino que el tipo varchar con máximo de 255 caracteres será uno de ellos
Me temo que no, porque, por ejemplo, Oracle no usa VARCHAR sino VARCHAR2. El otro es obsoleto, y en ese caso el límite no es de 255 caracteres, sino más de 4.000.
Además se da el caso de MySQL, donde el VARCHAR tiene límite de 255 caracteres sólo hasta la versión 5.0.3, ya que las posteriores llevaron ese límite a 65. 535 caracteres.
En el caso de SQLITE, el tipo de datos es TEXT, aunque admite otros tipos, pero usa reglas de afinidad para manejar el problema internamente.
Firebird usa VARCHAR hasta 32.000 caracteres.

Como puedes ver, VARCHAR no es un estandar.

Cita:
, pero el que más me interesa es el que utilizaré para almacenar valores numéricos (int, decimal, numeric...).
El problema es que diferentes DBMS tienen diferentes tipos de dato en cuestiones críticas, de modo que ni siquiera puedes asegurarte la portabilidad a niveles de consultas, al usar ciertas sintaxis, o en datos, al pretender acceder por ejemplo a UIDS de registros, que no los tienen todos...

¿Hay alguno válido para todos (o prácticamente todos) los SGBD?
En tu caso, yo procuraría mantenerme dentro del esquema del ANSI-SQL, con los tipos de columna más simples posibles, es lo más que puedes acercarte, hasta lo que yo entiendo.
De hecho, si usas SP, tendrás problemas mayores...
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)

Última edición por gnzsoloyo; 01/07/2010 a las 06:00