Ver Mensaje Individual
  #6 (permalink)  
Antiguo 29/04/2014, 13:33
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: cursores y trigger

Cita:
osea ke tabla2 debe en su campo Id_Tienda varchar2(4) entonces plantearse como
Id_Tienda varchar2(500) por decir algo?
Mas o menos, aunque lo que se hace en diseño de datos es estimar la longitud del dato, y luego indicar esa restricción a los programadores para que no permitan que el usuario ingrese cualquier cosa.
A nivel de programación esta es una validación que siempre existe, lo habrás visto en cualquier sitio, ya que no se debe permitir jamás ingresar datos inválidos.
Cita:
no se puede modificar la tabla? porque? porque dices que es erroneo? no entiendo comprende soy nueva en esto.
No se debe modificar una estructura de tablas, a menos que sea por requirimietnos muy específicos, y sólo si es estrictamente necesario.
Un modelo de datos es un modelo físico, Todo lo que pones en esl son estructuras permanentes, y deben responder la las necesidades del sistema que alimentan.
Si permites que una estructura de BBDD se modifique dinámicamente, tarde o temprano perderás el control de la estructura, y tendrás, por ejemplo, backups oinconsistentes con las bases de datos.
Cada vez que modificas una tabla se reescribe completa, afectas los índices, y si está relacionada, esas relaciones deben reescribirse. Estás afectando no sólo la performance del sistema, sino su estabilidad.
Uno de los primeros conceptos que te enseñan cuando estudias es que el modelo físico de datos debe ser:
1) Independiente de la arquitectura de software (sin acoplamiento con la aplicación)
2) Flexible a cualquier consulta (debe responder a cualquier consulta del sistema).
3) Adaptable a cambios de entorno (abstraerse del entorno ).
4) Estable y consistente (protección de consistencia e itegridad de datos).

¿Cuándo se modifica una tabla?
Cuando valores críticos para el sistema son cambiados por el entorno.
Por ejemplo: Si la codificación telefónica pasa de un máximo de siete dígitos urbanos a ocho, eso es un cambio grande. Pero para eso tienes el conocimietno que el sistema telefónico mundial no usa más de catorce dígitos, por lo cual creas la columna directamnete como un VARCHAR2(15) y listo.
Otro caso sería un cambio de codificación postal: de cuatro digitos, a ocho alfanumérico (pasó en Argentina). Eso mofdifica el largo del campo, pero son cambios muy raros, muy poco habituales.
En el caso de los nombres, simplemente la pregutna es: ¿Cuál es el nombre de empresa más largo que conoces? ¿250 caracteres? ¿270?
Bueno, le pones eso.
¿En nombres de personas?
Tal vez 150 o 180 caracteres.
No es tan difícil de ver. Simplemente le pones el dato que requiere ese dominio (universo de represntación de un mismo atributo) y listo.

Pero no dejas que se cambie porque si.

¿Se entiende?
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)