Vous êtes sur la page 1sur 8

Conocimientos bsicos de bases de datos.

En este documento se explica de manera rpida y sencilla que es una base de datos y su modelado, ya que,
antes de trabajar con cualquier manejador de BD es importante conocer como trabajan a nivel lgico y que
es lo que representamos en nuestro manejador, pues a veces los problemas se deben a un mal diseo de la
BD.

Base de datos: coleccin de datos interrelacionados que representan informacin de inters para un usuario
final, los datos son almacenados de manera sistemticas para su posterior uso aplicando diversas
estructuras.

DBMS: (Data Base Management System) Software con el que interactua la BD, es un intermediario entre el
usuario final y la BD, ya que, la BD se almacena en datafiles Disco Duro y son de estructura desconocida
para el usuario.

Entidad: cualquier objeto a partir del cual se realiza la abstraccin de datos.

Atributo: es una caracterstica de la entidad

Instancia de una entidad: es la existencia de un objeto en particular donde se conocen los valores de sus
atributos

Relacin: son la manera en que los datos son relacionados en una BD

Tipos de relacin

Uno a uno 1:1

Uno a muchos 1:M, 1:*

Muchos a muchos M:N , *:*

Para establecer una relacin entre un par de entidades A y B se realizan las siguientes preguntas.

Cuantas instancias de A se relacionan con una de B?

Cuantas instancias de B se relacionan con una de A?

Un curso est formado por varios estudiantes ------ ser 1:*

Un estudiante puede tomar varios cursos ------------- ser 1:*

Entonces mi relacin curso estudiante es: M:N *:*


Trabajar con MySQL
MySQL es uno de tantos manejadores de base de datos relacionales, en este caso es el preferido para
trabajar con PHP, es importante recalcar que cada manejador a pesar de sus similitudes tienden a tener
particularidades, MySQL no es la excepcin es por eso que las instrucciones aqu presentadas slo son
vlidas para MySQL.

Crear usuarios y asignar privilegios.

Usualmente MySQL nos da la posibilidad de trabajar como usuario root, que es el usuario con todos los
privilegios, pero a veces no es conveniente que se trabaje con este usuario por cuestiones de seguridad, es
por eso que lo recomendable es crear usuarios, para esto existe la clausula create user, recordando que al
crear usuarios debemos de ser root

Sintaxis

create user nombre_usuario@dominio indentified by contrasea

Una vez que tengamos el usuario creado es importante darle a ese usuario permisos de lo que puede hacer
en la base de datos, para esto existe la clausula grant, en este caso le daremos todos los privilegios a este
usuario, lo cual lo har similar a root

Sintaxis

grant all privileges on *.* to usuario@domonio


(*.* denota que sea sobre todas las tablas)

Conectarse con el usuario creado y crear bd

Una vez que tengamos el usuario creado procedemos a conectarnos con dicho usuario con la sintaxis que ya
conocemos

Mysql u usuario p

Para poder trabajar con una base de datos, el primer paso es crear la base de datos, para eso se usa el
comando create data base

Sintaxis

create database nombre_base_de_datos;


Tener la base de datos creada no implica que hayamos accedido a ella, por eso es necesario que una vez
conectados en el usuario que crea la base de datos es importante entrar a ella, esto es a travs del comando
use, es importante recalcar que este comando se debe de usar cada vez que accedamos al usuario
correspondiente

Sintaxis

Use nombre_base_de_datos;

Crear tablas y llaves primarias

Para poder trabajar con una base de datos es necesario crear entidades o tablas, para crear tablas se usa el
comando create table

Sintaxis

Create table nombre_tabla(

nombre_campo tipo de dato [not null / auto_increment],

nombre_campo tipo de dato,

primary key (campo)) ENGINE=InnoDB;

Es importante resaltar que al atributo not null es opcional dependiendo de las necesidades del modelado de
la tabla y auto_increment solo aplica para aquel campo que ser nuestra llave primaria, la cual se debe
declarar antes de cerrar la estructura de la tabla,

ENGINE=InnoDB; es usado para denotar el tipo de tabla que ser, por especificaciones de MySQL este el tipo
InnoDB es el unico campo que nos permite crear de manera adecuada llaves foraneas, por lo tanto todas
nuestras tablas deben de tener esa sentencia al final de create table.
Describe y mostrar en consola.

A veces es necesario para el DBA conocer la informacin de la tabla, el nombre de sus campos, el tipo de
datos que maneja, etc. Para eso existe la clausula describe

Sintaxis

describe nombre_tabla;

Clausula Alter

La clusula Alter nos indica que la tabla ser alterada, ya sea para modificar un campo o para agregar nuevas
columnas

Sintaxis

Alter table nombre_tabla

[modify nombre_campo tipo_de_dato/nuevo (longitud/ nueva)];

[add colum/index nombre_campo tipo_de_dato (longitud)];

[add constraint];

[Drop nombre_campo];

Creacin de llaves forneas

El modelo relacional necesita tanto de llaves primarias como forneas para saber de que manera se van a
relacionar los datos, pero antes de crear una llave fornea es importante crear ndices sobre los campos que
sern las llaves forneas ya que es necesarios para que la verificacin de las llaves forneas sea ms rpida.

Crear ndices para las FK


Crear constraints de FK

Un constraint es una limitacin referencial entre dos tablas. La clave fornea identifica una columna o grupo
de columnas en una tabla, que se refiere a una columna o grupo de columnas en otra tabla.

Es simple notar con un describe a la tabla correspondiente como cambian los campos, una vez agregados sus
respectivos constraints.

Borrar tablas

Para borrar tablas es necesario implementar la clusula drop

Sintaxis

drop table nombre_tabla

Clausula Insert

Una vez que nuestras tablas se han creado correctamente con nuestros respectivos constraints, ha llegado
el momento de insertar datos, para esto es importante recordar el tipo de dato de cada campo y usar la
sentencia insert.

Sintaxis

Insert into nombre tabla (campo1,campo2,campo3) values (valor1,valor2,valor3.);

Insert into nombre_tabla values (valor1,valor2,valor3.);

Ambas sentencias son vlidas pero para ejecutar la segunda es importante seguir el orden en el que fueron
introducidos los atributos y no saltarse ninguno, en caso de omitirlo por alguna razn si la naturaleza del
campo, se puede agregar un null en su lugar
NOTA: recordando que nuestras llaves primarias llevan la propiedad de auto_increment, al momento de
insertar los datos en este caso se debe poner un null y la propiedad auto_increment se encargar de agregar
el nmero correspondiente.

Clausula select

Es el primer contacto al ejecutar un query, lo que nos indica esta sentencia es que debemos de seleccionar
que se piden en el query,

Sintaxis

Select (/*) from table where (.);

En este caso * indica todo, entonces mandamos a llamar todos los datos insertados en la tabla cliente

Uso de PHPMyAdmin

PHPMyAdmin es el administrador de la base de datos de MySQL de manera grficaCuando hicimos la


instalacin de phpmyadmin, se conect con MySQL es por eso que todo aquello que veamos en la terminal
podr ser apreciado en PHPMyAdmin.

Incluso los usuarios creados, es por eso que accederemos con el usuario que se ha creado la base de datos.

Cuando accedemos podemos observar todas las bases de datos que tienen dicho usuario, entre ellas la que
hemos creado anteriormente.
PHPMyAdmin tiene las mismas funciones que la terminal de MySQL, lo que implica que podemos crear
tablas desde la herramienta, as como su modificacin.

Crear tablas en PHPMyAdmin

Esta herramienta nos ofrece la posibilidad de crear base de datos y todo lo que ello implica, sin siquiera
saber SQL.

Vous aimerez peut-être aussi