Universidad Dominicana O & M. Saber - Pensar – Trabajar Trabajar Extensión La Romana
Parte I, tema 3 Creación de tablas Obligatorio NOTA: No se pueden crear tablas con el mismo nombre que otras ya existentes en la misma base de datos !i estu"iesen ya creadas con ese nombre, es necesario borrarlas pre"iamente Definición de las tablas
TA#$A CO%P&A'O&(!) C A%P O CIF_comprador Nombre_social Domicilio_social Localidad C_postal Teléfono
T IP O alfanumérico de 11 alfanumérico de 30 alfanumérico de 30 alfanumérico de 30 alfanumérico de 5 alfanumérico de 9
caracteres caracteres caracteres caracteres caracteres caracteres
TA#$A A&TIC*$O! A&TIC*$O! CA %PO
T IP O
eferencia_articulo Descripci"n_articulo #recio_unidad I&' ()istencias_actuales
alfanumérico de 1! caracteres alfanumérico de 30 caracteres numérico de $ posiciones% con dos decimales numérico de ! posiciones numérico de 5 posiciones
TA#$A +ACT*&A! CA %PO
T IP O
Factura_no Fec*a_factura CIF_cliente
numérico de $ posiciones tipo fec*a alfanumérico de 11 caracteres
TA#$A $IN(A!+ACT*&A TA#$A $IN(A!+ACT*&A CA %PO Factura_no eferencia_articulo +nidades
T IP O numérico de $ posiciones alfanumérico de 1! caracteres numérico de 3 posiciones
Gestión de Base de Datos con SQL 1 Lic. Elvin Germán
Hengery Yokayra Yokayra Coplin Carera. !"#E$S#%&'
Universidad Dominicana O & M. Saber - Pensar – Trabajar Extensión La Romana
Enunciado 1. Creación
de las tablas con las restricciones.
a. Crear la tabla C,-#'D,(. con la columna de columna cif_comprador como clave primaria con nombre #/_C,-#'D,(._CIF , y la columna nombre_social única con nombre +_C,-#'D,(._N,-(_.,CI'L . La columna telefono debe ser obligatoria. b. Crear la tabla 'TIC+L,. , con referencia_articulo como #I-'2 /(2 con el nombre #/_'TIC+L,. , la columna I&' con valores entre 5 y 25 inclusive y la columna e)istecias_actuales con valor por defecto 0. c. Crear la tabla F'CT+'. con la columna factura_no como clave primaria con el nombre #/_F'CT+'. , y la columna fec*a_factura tendrá como valor por defecto la feca ! de enero de 2005. d.
Crear
la
tabla LIN('._F'CT+'. con las columnas factura_no y referencia_articulo como #I-'2 /(2 con nombre #/_LIN('._F'CT+' , la columna factura_no como F,(IN /(2 con nombre F/_LIN('._F'CT+'. referenciando la columna factura_no de la tabla facturas con borrado en cascada y la referencia_articulo F,(IN /(2 columna como con nombre F/_LIN('._'TIC+L,. referenciando la columna referencia_articulo de la tabla articulos "#adir a la tabla F'CT+'. la columna cod_oficina de tipo num$rico de % posiciones, con el número de oficina 2.
"#adir en la tabla F'CT+'. la columna cif_cliente como F,I(N /(2 con nombre F/_F'CT+'_C,-#'D,(. referenciando a la columna cif_comprador de la tabla compradores 3.
4.
Cambiar en la tabla C,-#'D,(. el nombre de la columna c_postal por
te)to_codi4o_postal 5.
"#adir a la columna cod_oficina de la tabla F'CT+'. la comprobación de estar entre ! y !000.
Gestión de Base de Datos con SQL 2 Lic. Elvin Germán
Hengery Yokayra Coplin Carera. !"#E$S#%&'
Universidad Dominicana O & M. Saber - Pensar – Trabajar Extensión La Romana
'(+INICI-N '( $A! TA#$A! 1 Creación de las tablas con las restricciones
66T'L' C,-#'D,(.1
C&(AT( Table Compradores1 7CIF_Comprador .A&C/A& 7118% Nombre_.ocial .A&C/A& 7308% Domicilio_.ocial .A&C/A& 7308% Localidad .A&C/A& 7308% C_#ostal C/A& 758% Telefono C/A& 7988 !($(CT :
+&O% Compradores1
CIF_Comprador
T'L' C,-#'D,(.1 Nombre_.ocial Domicilio Localidad
C_#ostal
Telefono
66T'L' 'TIC+L,.
C&(AT( Table articulo 7eferencia_'rticulo .A&C/A& 71!8% Descripci"n_'rticulo .A&C/A& 7308% #recio_+nidad +$OAT 7$%!8% I&' INT 7!8% ()istencias_'ctuales INT 7588 !($(CT : +&O% articulo TA#$A A&TIC*$O eferencia_'rticulo
Descripci"n_'rticulo
#recio_+nidad
I&'
()istencias_'ctuales
Gestión de Base de Datos con SQL 3 Lic. Elvin Germán
Hengery Yokayra Coplin Carera. !"#E$S#%&'
Universidad Dominicana O & M. Saber - Pensar – Trabajar Extensión La Romana
66T'L' F'CT+'
C&(AT( Table Factura 7Factura_No INT 7$8% Fec*a_Factura 'AT(% CIF_Cliente C/A& 71188 !($(CT :
F,- Factura
TA#$A +ACT*&A Factura_No
Fec*a_Factura
CIF_Cliente
66T'L( LIN('._F'CT+'
C&(AT( Table Lineas_Factura 7Factura_No INT 7$8% eferencia_'rticulo C/A& 71!8% +nidades INT 7388
!($(CT : +&O% Lineas_Factura TA#$A $IN(A!+ACT*&A Factura_No
eferencia_'rticulo
+nidades
Gestión de Base de Datos con SQL 4 Lic. Elvin Germán
Hengery Yokayra Coplin Carera. !"#E$S#%&'
Universidad Dominicana O & M. Saber - Pensar – Trabajar Extensión La Romana
(N*NCIA'O 66'
C&(AT( T'L( C,-#'D,(.1 7CIF_Comprador .A&C/A& 7118% Nombre_.ocial .A&C/A& 7308% Domicilio_.ocial .A&C/A& 7308% Localidad .A&C/A& 7308% C_#ostal C/A& 758% Telefono C/A& 798 NOT N*$$, CON!T&AINT #/_C,-#'D,(._CIF P&I%A&0 1(0 7Cif_Comprador8% CON!T&AINT +_C,-#'D,(._N,-(_.,CI'L *NI2*( 7Nombre_.ocial88 66 C('T( T'L( articulo 7eferencia_'rticulo .A&C/A& 71!8% Descripcion_'rticulo .A&C/A& 7308% #recio_+nidad +$OAT 7$%!8% I&' INT 7!8% C/(C1 7I&' #(T((N 5 AN' !58% ()istencias_'ctuales INT 758 '(+A*$T ;0;% CON!T&AINT #/_'TIC+L,. P&I%A&0 1(0 7eferencia_'rticulo88 66C
C&(AT( T'L( Facturas 7Factura_No INT 7$8% fec*a_Factura 'AT( '(+A*$T ;455675)75);% CIF_Cliente .A&C/A& 7118% C,N.T'INT #/_F'CT+'. P&I%A&0 1(0 7Factura_No88 66D
C&(AT( T'L( Lineas_Facturas 7Factura_No INT 7$8% eferencia_'rticulo .A&C/A& 71!8% +nidades INT 738% CON!T&AINT #/_LIN('._F'CT+' #I-'2 /(2 7Factura_No% eferencia_'rticulo8% CON!T&AINT F/_LIN('._F'CT+'. +O&(I8N 1(0 7Factura_No8 &(+(&(NC(! Facturas 7Factura_No8 ON '($(T( CA!CA'(% CON!T&AINT F/_LIN('._'TIC+L,. +O&(I8N 1(0 7eferencia_'rticulo8 &(+(&(NC(! 'rticulo 7eferencia_'rticulo88
Gestión de Base de Datos con SQL 5 Lic. Elvin Germán
Hengery Yokayra Coplin Carera. !"#E$S#%&'
Universidad Dominicana O & M. Saber - Pensar – Trabajar Extensión La Romana
66! 'LT( T'L( Facturas A'' 7cod_oficina N*%(&IC 7<88 663 'LT( T'L( Facturas 'DD 7C,N.T'INT F/_F'CT+'_C,-#'D,(. +O&(I8N 1(0 7CIF_Cliente8 &(+(&(NC(! C,-#'D,(.1 7CIF_Comprador88 66< 'LT( T'L( C,-#'D,(.1 758
C/AN8( C_#ostal
Te)to_Codi4o_#ostal .A&C/A&
665 'LT( T'L( Facturas A'' 7CON!T&AINT C/_C,DI,_,FICIN' C=(C/ 7Cod_,ficina #(T((N 1 AN' 10088
Gestión de Base de Datos con SQL 6 Lic. Elvin Germán
Hengery Yokayra Coplin Carera. !"#E$S#%&'