Oracle - velocidad de consulta segun tipo de Dato

 
Vista:

velocidad de consulta segun tipo de Dato

Publicado por luis (6 intervenciones) el 12/07/2003 02:11:13
Una consulta amigos..
Quiero definir un tipo de dato para un campo Primary Key, el cual sera un codigo , el cual usare como criterio de busqueda .
Por ejemplo "codigo_cliente" , en esta tabla, se almacenara 10 millones de registros .

PREGUNTAS :

-Que tipo de dato debo usar para definir el "codigo_cliente" ,
CHAR (5) O NUMBER(5,0)
-Con que tipo de dato es mas veloz las consultas.
-Y con que tipo de datos es recomendable definir los campos Primary key los cuales van a servir como criterio de consulta. Pues deseo respuestas veloces en mis consultas .

La razon de mi pregunta es que un amigo me dijo que en una columna de tipo number la consulta es mas veloz que en una columna de tipo char .

Les agradeceria me respondan esta duda . Gracias.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:velocidad de consulta segun tipo de Dato

Publicado por Gilberto (119 intervenciones) el 12/07/2003 18:20:36
Dejame decirte que a mi parecer ambos tipos de datos te son funcionales, debido a que cuando tu creas tu campo y le indicas que es primary key, automaticamente creas un Index el cual te ayudará a hacerte mas rápida tu consulta, sin hacer distinccion de tipo de datos. Lo que si es cierto es que dependiendo la forma en que grabas este campo, debes de buscar la manera mas facil para el usuario al momento de digitarlo al grabar o hacer la consulta. He visto primary key en campos de ambos tipos de datos y funcionan bien, lo unico es que no son tantos datos como los que indicas pero igual la respuesta en ambos es buena. Si hay alguna diferencia no creo que sea tan significativa. Espero te sirva,

salu2

gilh
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:velocidad de consulta segun tipo de Dato

Publicado por Byron (300 intervenciones) el 14/07/2003 17:47:49
El tipo de dato CHAR tiene como limitante que siempre almacena la misma cantidad especificada en su longitud, si intentas almacenar un valor de menor longitud Oracle lo rellena con espacios en blanco hasta completar la longitud, por este motivo es recomendable usar varchar2, el tipo de dato char se mantiene por versiones antiguas.

Relativamente no hay muestras claras que sea más rápido, pero es asumible que una clave en number lo sea porque Oracle lo almacena formato nativo de maquina (binarios) y ademas en notacion cientifica, si se realiza un full scan a la tabla por el campo number el resultado pudiera ser notorio en grandes cantidades de registros en comparacion a un campo varchar2.

En lo personal siempre procuro tener los primary keys en number.

Saludos DTB
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar