5. Conceptos
Entidad
Atributo, una propiedad de la Entidad
Registro, una f la que representa la
i
Entidad con sus atributos
Tabla, una sucesión de registros
tabulados por sus atributos de un mismo
tipo de Entidad
6. Conceptos
Base de datos, conjunto de Tablas
Servidor, lugar dónde residen las Bases
de Datos
Bases de datos relacionales
SQL, Structured Query Language
DDL, Data Def nition Language
i
DML, Data Manipulation Language
9. Estructura Cliente / Servidor
El servidor mantiene las bases de datos
El cliente realiza operaciones mediante
sentencias SQL.
La principal carga de trabajo recae en el
servidor.
10. Instalación de MySQL
Servidor
MySQL Community Server
http://www.mysql.com/downloads/mysql/
El CCFI ya ha instalado el servidor pero
no está activado
21. Fijar la base de datos
Un servidor puede alojar múltiples bases
de datos
Las operaciones SQL pueden referirse a
cualquiera de estas tablas
Para utilizar una base de datos en
concreto utilizamos
USE pruebas;
23. Cargar y guardar volcados
Base de datos Fichero
MySQLdump
Fichero Base de datos
Ejecutar sentencias SQL
24. Creación de una tabla
CREATE TABLE `jugador` (
`id` int(11) NOT NULL,
`nombre` varchar(45) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT
CHARSET=latin1
25. Propiedades de una tabla
Tipo de ENGINE
MyISAM
InnoDB
Charset
Latin1
UTF8
30. Tiempo
DATETIME
DATE
TIME
TIMESTAMP
YEAR
http://dev.mysql.com/doc/refman/5.1/en/date-and-time-types.html
31. Tipos de datos (de nuevo)
BIT[(length)] | CHAR[(length)]
| TINYINT[(length)] [UNSIGNED] [ZEROFILL] [CHARACTER SET charset_name] [COLLATE collation_name]
| SMALLINT[(length)] [UNSIGNED] [ZEROFILL] | VARCHAR(length)
| MEDIUMINT[(length)] [UNSIGNED] [ZEROFILL] [CHARACTER SET charset_name] [COLLATE collation_name]
| INT[(length)] [UNSIGNED] [ZEROFILL] | BINARY[(length)]
| INTEGER[(length)] [UNSIGNED] [ZEROFILL] | VARBINARY(length)
| BIGINT[(length)] [UNSIGNED] [ZEROFILL] | TINYBLOB
| REAL[(length,decimals)] [UNSIGNED] [ZEROFILL] | BLOB
| DOUBLE[(length,decimals)] [UNSIGNED] [ZEROFILL] | MEDIUMBLOB
| FLOAT[(length,decimals)] [UNSIGNED] [ZEROFILL] | LONGBLOB
| DECIMAL[(length[,decimals])] [UNSIGNED] [ZEROFILL] | TINYTEXT [BINARY]
| NUMERIC[(length[,decimals])] [UNSIGNED] [ZEROFILL] [CHARACTER SET charset_name] [COLLATE collation_name]
| DATE | TEXT [BINARY]
| TIME [CHARACTER SET charset_name] [COLLATE collation_name]
| TIMESTAMP | MEDIUMTEXT [BINARY]
| DATETIME [CHARACTER SET charset_name] [COLLATE collation_name]
| YEAR | LONGTEXT [BINARY]
[CHARACTER SET charset_name] [COLLATE collation_name]
| ENUM(value1,value2,value3,...)
[CHARACTER SET charset_name] [COLLATE collation_name]
| SET(value1,value2,value3,...)
[CHARACTER SET charset_name] [COLLATE collation_name]
| spatial_type
32. NULL y valores de fábrica
NULL | NOT NULL
DEFAULT 'valor'
33. Alterar una tabla
ALTER TABLE jugador ADD COLUMN
universo VARCHAR(20) NOT NULL AFTER
nombre;
ALTER TABLE jugador DROP COLUMN
universo;
ALTER TABLE jugador ADD KEY universo;
http://dev.mysql.com/doc/refman/5.1/en/alter-table.html
35. Foreign Keys
En tiempo de creación:
REFERENCES tbl_name
(index_col_name,...)
[MATCH FULL | MATCH PARTIAL |
MATCH SIMPLE]
[ON DELETE reference_option]
[ON UPDATE reference_option]
http://dev.mysql.com/doc/refman/5.1/en/innodb-foreign-key-constraints.html
36. Foreign Keys
Una vez creada la tabla:
ALTER TABLE jugador ADD FOREIGN KEY
index_name (index_col_name)
reference_def nition
i
47. JOIN
SELECT t1.name, t2.salary
FROM employee t1 INNER JOIN info t2
ON t1.name = t2.name
SELECT t1.name, t2.salay
FROM employee t1, info t2 WHERE
t1.name = t2.name
54. Ejercicio
Crear las tablas del siguiente diagrama
Crear las vistas asociadas (SELECT)
Insertar una Notif cación al insertar una
i
nueva tarea (TRIGGER)
Crear un procedimiento “tarea_notif cada”
i
(STORED PROCEDURE) que elimine la
notif cación y ponga la tarea en el estado
i
“progreso”