Ver Mensaje Individual
  #4 (permalink)  
Antiguo 07/01/2014, 06:46
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: erro con manipulacion de datos en grid

Es un consejo que se da siempre en BBDD. No es una buena práctica usar el asterisco por varias razones:
- La inmensa mayoría de las ocasiones no usas la totalidad de los datos. En el 99,99% de los casos la cantidad de columnas usadas es al menos una menos de las que la tabla tiene.
- Todo dato leído innecesariamente ocupa espacio tanto en los bloques de datos (recordar que el sistema no lee los datos como lee un texto), como también en el paginado de memoria, el buffer de consultas, y aumenta innecesariamente la cantidad de datagramas transmitidos, con lo que mandas por la red info que no se requiere.
- En el caso de los bloques de datos, mientras más datos inútiles pongas en la consulta, más acceso a disco requiere la lectura, con la consiguiente reducción de performance (por overhead), y más tiempo necesitsa para transmitir el mismo conjunto útil.
- Aumentas la posibilidad de redundancia de datos al usar JOINs, ya que los campos relacionados se duplican (salen una vez por cada tabla).
- Aumentas la inseguridad de datos, al transmitir más información de la estrictamente necesaria.
- Requieres más programación y pruebas por la ambigüedad de las columnas, la imprecisión de los nombres, o bien por errores de sintaxis ocultos detrás del "*", que son inadecuadamente probados.

Por lo demás, es habitual en las empresas de desarrollo (las tres en las que trabajé tenían la misma regla), que las directivas de desarrollo especifiquen que no se use el asterisco sino que se pongan uno a uno los campos.
Una de las razones, por ejemplo, es evitar que determinadas áreas de la empresa cuenten con acceso a datos que no necesitan ni tienen por qué ver.

En definitiva, por más engorroso que te parezca, o más innecesario que puedas suponer, las ventajas a la hora del desarrollo superan siempre con creces lo molesto de tener que indicar uno a uno los campos.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)