INTRODUCCIÓN ............................................................................ 2
GLOSARIO ...................................................................................47
1
FAVA - Formación en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Uso de sentencias SQL para la definición y manipulación del modelo de
base de datos en MySQL
Introducción
2
FAVA - Formación en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Uso de sentencias SQL para la definición y manipulación del modelo de
base de datos en MySQL
1. Generalidades MySQL
Tipos de datos
Números
3
FAVA - Formación en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Uso de sentencias SQL para la definición y manipulación del modelo de
base de datos en MySQL
• Ejemplo
Caracteres
4
FAVA - Formación en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Uso de sentencias SQL para la definición y manipulación del modelo de
base de datos en MySQL
• Ejemplo
Fechas
5
FAVA - Formación en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Uso de sentencias SQL para la definición y manipulación del modelo de
base de datos en MySQL
formato que se desee almacenar, estos tipos de datos son los siguientes:
• Ejemplo
Listas
Un ejemplo seria:
6
FAVA - Formación en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Uso de sentencias SQL para la definición y manipulación del modelo de
base de datos en MySQL
En este tutorial se presenta como hacer uso del motor de Base de Datos
MySQL para crear una base de datos. Se utilizará para esto la Base de
Datos “Citas” que se ha definido en otros elementos y que contiene cinco
tablas: Pacientes, Medicos, Consultorios, Citas y Tratamientos, como se
presenta en el diagrama.
7
FAVA - Formación en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Uso de sentencias SQL para la definición y manipulación del modelo de
base de datos en MySQL
8
FAVA - Formación en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Uso de sentencias SQL para la definición y manipulación del modelo de
base de datos en MySQL
9
FAVA - Formación en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Uso de sentencias SQL para la definición y manipulación del modelo de
base de datos en MySQL
• Abrir el bloc de notas del equipo para digitar cada una de las instrucciones
del Lenguaje de Definición de Datos, esto en pro de ir construyendo el
script de la base de Datos, una vez digitada la instrucción copiarla y
pegarla en el espacio de trabajo de MySQL, el cual aparece cuando se
inicializa el servicio.
10
FAVA - Formación en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Uso de sentencias SQL para la definición y manipulación del modelo de
base de datos en MySQL
my s q l
La instrucción es:
c r ea t e d a t a b a s e nomb r e _b a s e d a t o s ;
• Para crear todas las tablas debemos establecer “CITAS” como base de
datos predefinida
11
FAVA - Formación en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Uso de sentencias SQL para la definición y manipulación del modelo de
base de datos en MySQL
La instrucción es:
u s e nomb r e _b a s e d a t o s ;
La instrucción es:
s how d a t a b a s e s ;
12
FAVA - Formación en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Uso de sentencias SQL para la definición y manipulación del modelo de
base de datos en MySQL
Médicos
La instrucción es:
c r ea t e t a b l e nomb r eTa b l a (
nomb r ecampo1 ti pod a t o s ( t ama ño ) mod i f i ca do r ,
nomb r ecampo2 ti pod a t o s ( t ama ño ) mod i f i ca do r ,
....
p r i ma r y k e y ( nomb r ecampo1 )
);
13
FAVA - Formación en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Uso de sentencias SQL para la definición y manipulación del modelo de
base de datos en MySQL
La instrucción es:
s how t a b l e s f r om b a s e _d a t o s ;
La instrucción es:
d e s c r i b e nomb r e _ t a b l a ;
14
FAVA - Formación en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Uso de sentencias SQL para la definición y manipulación del modelo de
base de datos en MySQL
Pacientes
c r ea t e t a b l e nomb r eTa b l a (
nomb r ecampo1 ti pod a t o s ( t ama ño ) mod i f i ca do r ,
nomb r ecampo2 e num (‘ x ’ , ‘ y ’) ,
....
p r i ma r y k e y ( nomb r ecampo1 )
);
15
FAVA - Formación en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Uso de sentencias SQL para la definición y manipulación del modelo de
base de datos en MySQL
16
FAVA - Formación en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Uso de sentencias SQL para la definición y manipulación del modelo de
base de datos en MySQL
Consultorios
Citas
17
FAVA - Formación en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Uso de sentencias SQL para la definición y manipulación del modelo de
base de datos en MySQL
c r ea t e t a b l e nomb r eTa b l a (
nomb r ecampo1 ti pod a t o s ( t ama ño ) mod i f i ca do r
nomb r ecampo2 e num (‘ x ’ , ‘ y ’) d e f a u lt “ v a l o r ” ,
....
p r i ma r y k e y ()
f o r e i gn k e y nomb r ecampo a s r e f e r e n ce s t a b l a ( campo_ t a b l a )
);
18
FAVA - Formación en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Uso de sentencias SQL para la definición y manipulación del modelo de
base de datos en MySQL
19
FAVA - Formación en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Uso de sentencias SQL para la definición y manipulación del modelo de
base de datos en MySQL
20
FAVA - Formación en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Uso de sentencias SQL para la definición y manipulación del modelo de
base de datos en MySQL
21
FAVA - Formación en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Uso de sentencias SQL para la definición y manipulación del modelo de
base de datos en MySQL
22
FAVA - Formación en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Uso de sentencias SQL para la definición y manipulación del modelo de
base de datos en MySQL
5. Modificación de registros
La sentencia INSERT permite incluir los datos en cada uno de los campos
que se tienen en las tablas de la base de datos creada. Se deben tener en
cuenta algunos detalles al momento de utilizar el “INSERT INTO”:
6. La finalización de la instrucción.
Su sintaxis es:
23
FAVA - Formación en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Uso de sentencias SQL para la definición y manipulación del modelo de
base de datos en MySQL
Para los campos de tipo TEXTO el valor va entre comilla sencilla. Por
ejemplo para el campo PacNombres de tipo varchar el dato se envía
‘Ma r i a Cam il a’.
Para los campos tipo NUMERICO el valor va sin comilla sencilla Por
ejemplo para el campo ConNumero de tipo int el dato se envía 101 .
Caso 1
24
FAVA - Formación en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Uso de sentencias SQL para la definición y manipulación del modelo de
base de datos en MySQL
v a l u e s (‘ v a l o r 1 ’ , ’ v a l o r 2 ’ , ’ v a l o r 3 ’ , ’ v a l o r 4 ’ , ‘ v a l o r 5 ’) ;
25
FAVA - Formación en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Uso de sentencias SQL para la definición y manipulación del modelo de
base de datos en MySQL
Caso 2
values
(‘valor 1’,’valor 2’,’valor 3’,’valor 4’, ‘valor 5’), ------ Valores de registro 1
(‘valor 1’,’valor 2’,’valor 3’,’valor 4’, ‘valor 5’), ------ Valores de registro 2
(‘valor 1’,’valor 2’,’valor 3’,’valor 4’, ‘valor 5’); ------ Valores de registro 3
Caso 3
Para el caso de las tablas que contienen llaves foráneas, es decir campos
de referencia a otras tabas, el único cuidado que se debe tener para lograr
una inserción exitosa de registros es que se incluyan datos que estén en
la tabla principal. Un ejemplo de esto se da con el campo “TraPaciente” el
26
FAVA - Formación en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Uso de sentencias SQL para la definición y manipulación del modelo de
base de datos en MySQL
Según esto los datos que se podrían enviar son (37821203, 63502720,
77191950 o 77191957)
27
FAVA - Formación en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Uso de sentencias SQL para la definición y manipulación del modelo de
base de datos en MySQL
Y ahora la instrucción,
28
FAVA - Formación en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Uso de sentencias SQL para la definición y manipulación del modelo de
base de datos en MySQL
6. Consulta de registros
Se l ec t c o l umn a , li s t a _ c o l umn a s
F r om t a b l a _o r i g e n
Wh e r e c ond i c i ón
G r oup by c o l umn a 1 , …
Ha v i ng c ond i c i ón
O r d e r by c o l umn a a s c
O r d e r by c o l umn a d e s c
29
FAVA - Formación en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Uso de sentencias SQL para la definición y manipulación del modelo de
base de datos en MySQL
tener claro cuál o cuáles son los datos que se requiere visualizar y de que
tabla o tablas se van a extraer.
Para las prácticas que se van a desarrollar en esta sesión se tomarán como
referencia las tablas que se construyeron anteriormente, recordemos la
sintaxis:
u s e c it a s ;
s how t a b l e s fr om c it a s ;
d e s c nomb r e _ t a b l a ;
30
FAVA - Formación en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Uso de sentencias SQL para la definición y manipulación del modelo de
base de datos en MySQL
31
FAVA - Formación en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Uso de sentencias SQL para la definición y manipulación del modelo de
base de datos en MySQL
EJEMPLO 1
Esta consulta puede requerir TODOS los campos de la tabla, para este
caso se utiliza el comodín * a s t e r i s c o - t odo s
La instrucción seria:
Se l ec t * F r om p ac i e n t e s ;
32
FAVA - Formación en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Uso de sentencias SQL para la definición y manipulación del modelo de
base de datos en MySQL
EJEMPLO 2
F r om p ac i e n t e s
EJEMPLO 3
Se l ec t * fr om c on s u lt o r i o s ;
33
FAVA - Formación en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Uso de sentencias SQL para la definición y manipulación del modelo de
base de datos en MySQL
EJEMPLO 4
• Con el comodín *
Se l ec t * fr om me d i c o s ;
fr om me d i c o s ;
34
FAVA - Formación en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Uso de sentencias SQL para la definición y manipulación del modelo de
base de datos en MySQL
F r om me d i c o s
35
FAVA - Formación en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Uso de sentencias SQL para la definición y manipulación del modelo de
base de datos en MySQL
Se l ec t Me d I d e n ti f i cac i on a s I d e n ti f i cac i on ,
Me dNomb r e s a s Nomb r e ,
Me dAp e l l i do s a s Ap e l l i do s
F r om me d i c o s
Se l ec t campo o campo s ,
F r om t a b l a
Wh e r e c ond i c i ón ;
36
FAVA - Formación en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Uso de sentencias SQL para la definición y manipulación del modelo de
base de datos en MySQL
Wh e r e Pac s e xo= ’ M ’ ;
37
FAVA - Formación en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Uso de sentencias SQL para la definición y manipulación del modelo de
base de datos en MySQL
Se l ec t *
F r om p ac i e n t e s
Wh e r e Pac I d e n ti f i cac i on=37821200 ;
La sintaxis:
Se l ec t campo o campo s ,
F r om t a b l a
O r d e r by c o l umn a
38
FAVA - Formación en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Uso de sentencias SQL para la definición y manipulación del modelo de
base de datos en MySQL
Se l ec t PacNomb r e s , PacAp e l l i do s
F r om p ac i e n t e s
O r d e r by PacNomb r e s ;
Se l ec t PacNomb r e s , PacAp e l l i do s
F r om p ac i e n t e s
O r d e r by PacAp e l l i do s ;
39
FAVA - Formación en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Uso de sentencias SQL para la definición y manipulación del modelo de
base de datos en MySQL
Se l ec t *
F r om p ac i e n t e s
O r d e r by Pac I d e n ti f i cac i on a s c ;
EJEMPLO 1
40
FAVA - Formación en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Uso de sentencias SQL para la definición y manipulación del modelo de
base de datos en MySQL
41
FAVA - Formación en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Uso de sentencias SQL para la definición y manipulación del modelo de
base de datos en MySQL
La Sintaxis es:
Se l ec t a li a s 1 . campo a li a s 2 . campo
F r om t a b l a 1 a li a s 1 t a b l a 2 a li a s 2
Wh e r e a li a s 1 . ll a v e p r i n c i p a l = a li a s 2 . ll a v e f o r a n ea ;
Se l ec t t r a . * , p ac . PacNomb r e s , p ac . PacAp e l l i do s
F r om t r a t am i e n t o s t r a , p ac i e n t e s p ac
Wh e r e p ac . Pac I d e n ti f i cac i on = t r a . T r a p ac i e n t e ;
EJEMPLO 2
42
FAVA - Formación en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Uso de sentencias SQL para la definición y manipulación del modelo de
base de datos en MySQL
realizado.
Se l ec t p ac . PacNomb r e s , p ac . PacAp e l l i do s , t r a . *
F r om t r a t am i e n t o s t r a , p ac i e n t e s p ac
Wh e r e p ac . Pac I d e n ti f i cac i on = t r a . T r a p ac i e n t e ;
EJEMPLO 3
43
FAVA - Formación en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Uso de sentencias SQL para la definición y manipulación del modelo de
base de datos en MySQL
EJEMPLO 4
F r om t r a t am i e n t o s tra, p ac i e n t e s p ac
F r om t r a t am i e n t o s tra, p ac i e n t e s p ac
44
FAVA - Formación en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Uso de sentencias SQL para la definición y manipulación del modelo de
base de datos en MySQL
6.6. Subconsultas
Se puede utilizar el predicado ANY o SOME, los cuales son sinónimos, para
45
FAVA - Formación en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Uso de sentencias SQL para la definición y manipulación del modelo de
base de datos en MySQL
Se l ec t nomb r e , e d a d
F r om e s t ud i a n t e
wh e r e e d a d i n ( s e l ec t ma x ( e d a d ) fr om e s t ud i a n t e ) ;
46
FAVA - Formación en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Uso de sentencias SQL para la definición y manipulación del modelo de
base de datos en MySQL
Glosario
MySQL: Motor de Bases de Datos libre, gratuito que está disponible para
varios sistemas operativos.
NOT NULL: Tipo de identificador utilizado para impide que un campo sea
vacío.
USE: Palabra utilizada para establecer una base de datos, como base de
datos predefinida.
47
FAVA - Formación en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Uso de sentencias SQL para la definición y manipulación del modelo de
base de datos en MySQL
Recursos Bibliográficos
http://dev.mysql.com/doc/refman/5.0/es/index.html
48
FAVA - Formación en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Uso de sentencias SQL para la definición y manipulación del modelo de
base de datos en MySQL
CRÉDITOS
Desarrollador de contenido
Magda Milena García Gamboa
Experto temático
49
FAVA - Formación en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje