Base de Datos
El diseño físico de la base de datos optimiza el rendimiento a la
vez que asegura la integridad de los datos al evitar repeticiones
innecesarias de datos.
Durante el diseño físico, se transforman las entidades en tablas,
las instancias en flas y los atributos en columnas.
●
Convertir entidades en tablas físicas
●
Utilizar para las columnas de las tablas físicas
●
Columnas de las tablas deben defnirse como claves
●
Indices deben defnirse en las tablas
●
Vistas deben defnirse en las tablas
●
Desnormalizar las tablas
Elegir un SGBD
Los tres factores más infuyentes a la hora de elegir un servidor
de bases de datos son:
●
El tipo de datos
●
Aplicaciones utilizadas
●
Rendimiento requerido.
El criterio que mas pesa en los desarrolladores.
La integración con las tecnologías usadas.
Sin dejar a un lado el rendimiento.
Elegir un SGBD
Ejemplos de SGBD. Algunos de los mas Importantes SGBD son:
*Tomado stackoverfow
Elegir un SGBD
Pasos para crear.
1)Instalar el motor.
PostgresSql.
http://www.postgresqltutorial.com/install-postgresql/
MySql.
https://dev.mysql.com/doc/refman/8.0/en/installing.html
Oracle
https://docs.oracle.com/en/database/oracle/oracle-databas
e/19/install-and-upgrade.html
SqLite
https://www.sqlitetutorial.net/download-install-sqlite/
Pasos para crear.
2)Escoger Un software de administración de bases de datos
PostgresSql.
PgAdmin
MySql.
MySQL Workbench
Oracle
Toad for Oracle
SqLite
DB Browser for SQLite
Pasos para crear.
3)Crear la Base de datos.
Postgres Mysql
Pasos para crear.
3)Crear la Base de datos.
Oracle
Pasos para crear.
3)Crear la Base de datos.
Postgres
CREATE DATABASE DataBaseName;
Mysql
CREATE DATABASE menagerie;
Pasos para crear.
3)Crear la Base de datos.
Postgres
CREATE DATABASE DataBaseName;
Mysql
CREATE DATABASE menagerie;
Oracle
CREATE DATABASE menagerie;
pero revisar la forma correcta
https://docs.oracle.com/cd/B28359_01/server.111/b28310/create003.htm#ADMIN11074
Pasos para crear.
4)Crear la Esquema
Postgres
CREATE SCHEMA myschema;
Oracle
CREATE SCHEMA AUTHORIZATION schema_name
[create_table_statement]
[create_view_statement]
[grant_statement];
Pasos para crear.
4)Crear la Table
Mysql
http://www.mysqltutorial.org/mysql-data-types.aspx
Oracle
https://docs.oracle.com/cd/B28359_01/server.111/b28318/
datatype.htm#CNCPT1828
Pasos para crear.
4)Crear la Table
column_name TYPE auto incremento.
Postgres
id SERIAL PRIMARY KEY,
Mysql
id MEDIUMINT NOT NULL AUTO_INCREMENT,
Postgres
https://drive.google.com/uc?id=1sMNxhDDoJBbqPxLKCSOj
q4I9xrIIAw8U&export=download
Oracle
https://drive.google.com/uc?id=1iLs1DTE91wKyad9MjtwJ4d
ctwLhVQIGG&export=download
Pasos para crear.
5)Ejemplo pasar D clases
a D Relacional
Pasos para crear.
5)Ejemplo
por esquemas
Create Table compilado.
CREATE TABLE table_name (
column1 datatype constraint,
column2 datatype constraint,
column3 datatype constraint,
....
);
NOT NULL - Valores nulos.
UNIQUE – Valores únicos en la columna.
PRIMARY KEY – Combinación de NOT NULL and UNIQUE.
FOREIGN KEY – Registro que se encuentra en otra tabla.
CHECK – La columna satisfagan una condición específca.
DEFAULT -Valor predeterminado cuando no se ningún valor.
INDEX - Recuperar datos de la base de datos muy rápidamente.
Create Table compilado.
https://drive.google.com/uc?id=13l2xf3LBwGCW-0wwWKZgocIjGsBt3wP-&export=
download
Create Table compilado.
CREATE TABLE Pedido.PERSONA(
ID int NOT NULL,
NOMBRE char(10) NOT NULL,
APELLIDO char(30) NOT NULL,
IDSEXO int NOT NULL REFERENCES Academico.SEXO(id),
IDCIUDAD int NOT NULL REFERENCES Academico.CIUDAD(id),
DOCUMENTO char(50) NOT NULL,
IDTIPODOCUMENTO int NOT NULL REFERENCES Academico.TIPODOCUMENTO(id),
FECHANACIMIENTO date NULL CHECK (FECHANACIMIENTO > '1900-01-01'),
FECHAREGISTRO date NOT NULL DEFAULT Now() ,
email char (355) UNIQUE NOT NULL,
PROFESION char(12) NULL,
PERFIL char(120) NULL,
CONSTRAINT PK_PERSONA PRIMARY KEY
(ID) );
Modifcar tablas.
Agregar y eliminar columnas
La sentencia alter table permite una amplia gama de formas
de modifcar una tabla.
agregar una columna, podemos usar la sintaxis siguiente:
alter table personal add capital int not null-> after nom;