Uso de campo autonumérico en la relación Maestro Detalle

17/07/2009 - 22:01 por Alexa | Informe spam
Si tengo dos tablas :

FACTURA
-
Nro. Factura (clave)
fecha

DETALLE_FACTURA

Nro.Factura
cod_articulo
cantidad

¿Cuál podría ser la DESVENTAJA de que Nro.Factura sea el campo clave de
DETALLE_FACTURA?
Si a DETALLE_FACTURA le agrego un campo llamado id_detalle de tipo
autonumérico ¿Qué ventaja obtendría ?

Preguntas similare

Leer las respuestas

#1 Gustavo Cantero
17/07/2009 - 22:29 | Informe spam
Alexa:
Si pones el campo "Nro.Factura" como clave primaria del detalle
sólo vas a poder cargar un detalle por cada Factura, ya que la clave
primaria no se puede repetir. Como alternativa podrías poner que la
clave primaria fuera compuesta por el "Nro.Factura" y "Cod_Articulo",
pero para ubicar un registro en la tabla de detalles (para visualizar,
modificar o eliminar) es más cómodo utilizando un solo campo (en este
caso el autonumérico) que dos o más campos.
Cabe mencionar que utilizando la clave compuesta tampoco podrías
tener dos detalles de la misma factura con el mismo código de artículo.
Saludos.

Gustavo A. Cantero
Scientia® Soluciones Informáticas
MCP - MCSD - MCTS - MCPD
http://www.scientia.com.ar
http://www.programandoamedianoche.com
http://foro.scientia.com.ar

De: Alexa [mailto:]
Expuesto a las: Viernes, 17 de Julio de 2009 05:01 p.m.
Expuesto en: microsoft.public.es.sqlserver
Conversación: Uso de campo autonumérico en la relación Maestro Detalle
Asunto: Uso de campo autonumérico en la relación Maestro Detalle

Si tengo dos tablas :

FACTURA
-
Nro. Factura (clave)
fecha

DETALLE_FACTURA

Nro.Factura
cod_articulo
cantidad

¿Cuál podría ser la DESVENTAJA de que Nro.Factura sea el campo clave de
DETALLE_FACTURA?
Si a DETALLE_FACTURA le agrego un campo llamado id_detalle de tipo
autonumérico ¿Qué ventaja obtendría ?
Respuesta Responder a este mensaje
#2 Victor Koch
17/07/2009 - 22:35 | Informe spam
Hola,

Toda tabla debe tener si o si una clave o índice para identificar en forma
única al registro, ¿ esto se entendió ?

Entonces vamos a analizar cada una de las tablas:

Tabla Factura:

Definiste Nro Factura como clave, supongo que al no aclarar mas el tema te
estas refiriendo que Nro Factura será la clave primaria o única.

No se si en esa tabla solo guardas Facturas o cualquier otro tipo de
comprobante, por ejemplo Notas de Crédito o Debito, tampoco conozco la
legislación impositiva o reglamentación en lo que respecta a la emisión de
comprobantes, pero puede se posible que la empresa tenga el mismo numero
pero para comprobantes distintos, por ejemplo la Factura 20 y la Nota de
Crédito 20, si esto es así entonces con la clave definida estas sonado
porque la clave única no permite duplicados.

Tabla Detalle Factura:

Definiste Nro Factura como clave, supongo que al no aclarar mas el tema te
estas refiriendo que Nro Factura será la clave primaria o única. Seguramente
vas a tener mas de un ítem en una factura, eso lo diferencias por el campo
cod_articulo pero entonces vas a tener mas de un registro para el mismo
numero de factura, devuelta estas sonado porque la clave única no permite
duplicados.

Un Saludo, Víctor Koch



" Alexa" escribió en el mensaje
news:
Si tengo dos tablas :

FACTURA
-
Nro. Factura (clave)
fecha

DETALLE_FACTURA

Nro.Factura
cod_articulo
cantidad

¿Cuál podría ser la DESVENTAJA de que Nro.Factura sea el campo clave de
DETALLE_FACTURA?
Si a DETALLE_FACTURA le agrego un campo llamado id_detalle de tipo
autonumérico ¿Qué ventaja obtendría ?


Respuesta Responder a este mensaje
#3 Maxi
18/07/2009 - 05:14 | Informe spam
Alexa el id autonumerico deberia ir en la cabecera y luego en el detalle
unirias por ese campo tambien teniendo un campo llamado facid.

Podrias entonces tener como campos, el id de la factura, el numero, el
importe etc y relacionar por el ID que es autonumerico o GUID

No es una mala tecnica si se tienen sus recaudos, la ventaja de tener el id
es que podrias cambiar los numeros de factura de una forma simple ya que no
es parte de la PK, pero ojo deberias tener un indice unico por numero de
factura para evitar facturas duplicadas.
Esta es la mayor ventaja que yo le veo a ese modelo, sino deberias usar como
pk el numero de factura y en el detalle tendrias como pk el numero+ la linea



Maxi Accotto
Microsoft MVP en SQL Server
Consultor en SQL Server
http://blog.maxiaccotto.com



" Alexa" escribió en el mensaje de
noticias:
Si tengo dos tablas :

FACTURA
-
Nro. Factura (clave)
fecha

DETALLE_FACTURA

Nro.Factura
cod_articulo
cantidad

¿Cuál podría ser la DESVENTAJA de que Nro.Factura sea el campo clave de
DETALLE_FACTURA?
Si a DETALLE_FACTURA le agrego un campo llamado id_detalle de tipo
autonumérico ¿Qué ventaja obtendría ?


Respuesta Responder a este mensaje
#4 Alexa
30/07/2009 - 20:11 | Informe spam
Perfecto, me ayuda demasiado estas explicaciones tan didácticas , pues son
para mi extremadamente útiles.
No te preocupes de la complejidad de la tabla Factura, solo puse un ejemplo
de tabla simple y de alli ya deduzco lo demás.
Gracias Víctor.


"Victor Koch" <v i c t o r (arroba)correo(punto)waldbott(punto)com(punto)ar>
escribió en el mensaje de noticias:

Hola,

Toda tabla debe tener si o si una clave o índice para identificar en forma
única al registro, ¿ esto se entendió ?

Entonces vamos a analizar cada una de las tablas:

Tabla Factura:

Definiste Nro Factura como clave, supongo que al no aclarar mas el tema te
estas refiriendo que Nro Factura será la clave primaria o única.

No se si en esa tabla solo guardas Facturas o cualquier otro tipo de
comprobante, por ejemplo Notas de Crédito o Debito, tampoco conozco la
legislación impositiva o reglamentación en lo que respecta a la emisión de
comprobantes, pero puede se posible que la empresa tenga el mismo numero
pero para comprobantes distintos, por ejemplo la Factura 20 y la Nota de
Crédito 20, si esto es así entonces con la clave definida estas sonado
porque la clave única no permite duplicados.

Tabla Detalle Factura:

Definiste Nro Factura como clave, supongo que al no aclarar mas el tema te
estas refiriendo que Nro Factura será la clave primaria o única.
Seguramente vas a tener mas de un ítem en una factura, eso lo diferencias
por el campo cod_articulo pero entonces vas a tener mas de un registro
para el mismo numero de factura, devuelta estas sonado porque la clave
única no permite duplicados.

Un Saludo, Víctor Koch



" Alexa" escribió en el mensaje
news:
Si tengo dos tablas :

FACTURA
-
Nro. Factura (clave)
fecha

DETALLE_FACTURA

Nro.Factura
cod_articulo
cantidad

¿Cuál podría ser la DESVENTAJA de que Nro.Factura sea el campo clave de
DETALLE_FACTURA?
Si a DETALLE_FACTURA le agrego un campo llamado id_detalle de tipo
autonumérico ¿Qué ventaja obtendría ?






Respuesta Responder a este mensaje
#5 Alexa
30/07/2009 - 21:19 | Informe spam
Ya creo que me voy dando cuenta sobre el fondo de mi duda : si colocamos un
campo autonumérico como CLAVE para una tabla cualquiera ¿ que diferencia
habria en NO TENER ningún campo clave para esa misma tabla ?
En el caso concreto de la tabla detalle_factura, si tenemos el campo
autonumérico como CLAVE podriamos tener muchos detalles para una misma
factura con el mismo código de artículo , y si NO TENDRIAMOS ningún campo
como clave también podriamos hacer lo mismo ¿ENTONCES QUE SENTIDO TIENE UN
CAMPO AUTONUMERICO COMO CAMPO CLAVE? ¿dónde está la diferencia entre tenerlo
o no tenerlo como campo clave a un campo autonumérico?


"Gustavo Cantero" escribió en el mensaje de
noticias:
Alexa:
Si pones el campo "Nro.Factura" como clave primaria del detalle
sólo vas a poder cargar un detalle por cada Factura, ya que la clave
primaria no se puede repetir. Como alternativa podrías poner que la
clave primaria fuera compuesta por el "Nro.Factura" y "Cod_Articulo",
pero para ubicar un registro en la tabla de detalles (para visualizar,
modificar o eliminar) es más cómodo utilizando un solo campo (en este
caso el autonumérico) que dos o más campos.
Cabe mencionar que utilizando la clave compuesta tampoco podrías
tener dos detalles de la misma factura con el mismo código de artículo.
Saludos.

Gustavo A. Cantero
Scientia® Soluciones Informáticas
MCP - MCSD - MCTS - MCPD
http://www.scientia.com.ar
http://www.programandoamedianoche.com
http://foro.scientia.com.ar

De: Alexa [mailto:]
Expuesto a las: Viernes, 17 de Julio de 2009 05:01 p.m.
Expuesto en: microsoft.public.es.sqlserver
Conversación: Uso de campo autonumérico en la relación Maestro Detalle
Asunto: Uso de campo autonumérico en la relación Maestro Detalle

Si tengo dos tablas :

FACTURA
-
Nro. Factura (clave)
fecha

DETALLE_FACTURA

Nro.Factura
cod_articulo
cantidad

¿Cuál podría ser la DESVENTAJA de que Nro.Factura sea el campo clave de
DETALLE_FACTURA?
Si a DETALLE_FACTURA le agrego un campo llamado id_detalle de tipo
autonumérico ¿Qué ventaja obtendría ?


email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida