You are on page 1of 19

UNIDAD I

TERMINOLOGA BSICA: TABLAS, CAMPOS Y REGISTROS


Una base de datos se define como una serie de datos organizados y relacionados entre s, los
cuales son recolectados y explotados por los sistemas de informacin de una empresa o negocio en
particular.
Toda base de datos est formada por uno o varios bloques de informacin llamados TABLAS
(inicialmente denominados ficheros o archivos) que normalmente tendrn alguna caracterstica en
comn.
Una TABLA o archivo de datos es un conjunto conexo de informacin del mismo tipo; por ejemplo en
una base de datos de una biblioteca, una tabla estar constituida por la informacin relativa a todos
los libros de la misma, otra tabla contendr informacin sobre los lectores, etc.
Cada tabla est formada por REGISTROS. Un registro es la unidad elemental de informacin de la
tabla o fichero. En la tabla o fichero de libros, un registro estara constituido por la informacin
correspondiente a cada libro concreto, con su ttulo, autor, rea, editorial, etc.
Cada registro est formado por uno o ms elementos llamados CAMPOS. Un campo es cada una de
las informaciones que interesa almacenar en cada registro y es, por tanto, la unidad elemental de
informacin del registro. En el ejemplo anterior, un campo sera el ttulo del libro; otro campo su
autor, etc.
Gracias a la aparicin de los llamados programas de usuario es posible realizar la gestin de tablas
de una base de datos, sin tener que realizar programas que procesen esos datos, facilitando todas
las operaciones de creacin, actualizacin, consulta y creacin de informes con los datos recogidos.
La forma de almacenar los ficheros, registros y campos es distinta, desde el punto de vista tcnico,
dependiendo de las caractersticas de la informacin que se quiere tratar. Sea cual se ala estructura
de la base de datos, siempre se puede incluir ficheros de ndices secundarios para facilitar una
respuesta eficaz a determinados tipos de acceso.

BASES DE DATOS RELACIONALES


Quizs, el problema fundamental que suele plantearse al realizar una base de datos real, formada
por varias tablas, es la repeticin de datos, es decir, campos repetidos en diferentes tablas
(redundancia), lo cual va a dificultar su gestin, es decir, la actualizacin, insercin, modificacin,
eliminacin, consulta, etc.
Para resolver estos problemas es necesario que exista integracin entre las distintas tablas y que
est controlada la repeticin de datos. As surgen los llamados Sistemas de Gestin de Bases de
Datos Relacionales que, en el caso de los microordenadores, estn concebidos como un conjunto de
programas de propsito general que permiten controlar el acceso y la utilizacin de las bases de
datos de forma que satisfagan las necesidades del usuario (programas de usuario) y que acten con
independencia de los datos, y con ellos las llamadas Bases de Datos Relacionales que puedan
resolver, mejor que otras organizaciones, las dificultades de redundancia y no la integracin de los
datos. En este tipo de bases de datos se suprimen las jerarquas entre campos, pudindose utilizar
cualquiera de ellos como clave de acceso.
Las principales ventajas de la utilizacin de bases de datos relacionales son:
-

Actan sobre las tablas en su conjunto, en lugar de hacerlo sobre los registros como ocurre en
otros sistemas.
Se pueden realizar consultas complejas que utilizan varias tablas de forma simple.
Son fciles de utilizar (la organizacin fsica de los datos es independiente de su tratamiento
lgico).

La organizacin relacional se caracteriza porque las tablas de la base de datos tienen estructura de
matriz o tabla bidimensional, donde las filas son los registros y las columnas los campos.

Diseo DE UNA BASE DE DATOS RELACIONAL


Lo primero que hay que tener presente a la hora de disear una base de datos relacional es el propio
concepto de modelo relacional, que organiza los datos en una base de datos como una coleccin de
tablas teniendo presente inicialmente lo siguiente:
-

Cada tabla tiene un nombre que la identifica unvocamente.


Cada tabla tiene una o ms columnas nominadas, que estn dispuestas en un orden
especfico de izquierda a derecha.
Cada tabla tiene cero o ms filas, conteniendo cada una un nico valor en cada columna. Las
filas estn desordenadas.
Todos los valores de una columna determinada tienen el mismo tipo de datos y stos estn
extrados de un conjunto de valores legales llamado el dominio de la columna.

A su vez, las tablas estn relacionadas unas con otras por los datos que contienen. El modelo de
datos relacional utiliza claves primarias y claves secundarias (externas o forneas) para representar
estas relaciones entre tablas. A la hora de definir las claves primarias y secundarias es necesario
tener presente de entrada lo siguiente:
-

Una clave primaria es una columna o combinacin de columnas dentro de una tabla cuyo(s)
valor(es) identifica(n) unvocamente a cada fila de la tabla. Cada tabla tiene una nica clave
primaria.
Una clave secundaria es una columna o combinacin de columnas en una tabla cuyo(s)
valor(es) es(son) un valor de clave primaria para alguna otra tabla. Una tabla puede contener
ms de una clave secundaria, enlazndola a una o ms tablas.

Correspondencia de Cardinalidades:
La cardinalidad es el nmero de instancias de una entidad que se pueden relacionar con un nmero
de instancias de otra entidad.

Relacin de Uno a Uno (1:1): Una entidad de A se relaciona nicamente con una entidad en B y
viceversa (ejemplo relacin vehculo - matrcula: cada vehculo tiene una nica matrcula, y cada
matrcula est asociada a un nico vehculo).

VEHICULO

MATRICULA

Relacin de Uno a Muchos (1:M): Una entidad en A se relaciona con cero o muchas entidades en
B. Pero una entidad en B se relaciona con una nica entidad en A (ejemplo vendedor - ventas).

VENDEDOR

VENTAS

Relacin de Muchos a Muchos (M:N): Una entidad en A se puede relacionar con 0 o muchas
entidades en B y viceversa (ejemplo asociaciones- ciudadanos, donde muchos ciudadanos pueden
pertenecer a una misma asociacin, y cada ciudadano puede pertenecer a muchas asociaciones
distintas).
ASOCIACIONES

CIUDADANOS

EL LENGUAJE SQL
SQL (Structured Query Language) es un lenguaje estructurado de interrogacin y administracin
de bases de datos relacionales. Numerosas firmas comerciales han introducido en el mercado
productos de bases de datos relacionales orientados al SQL, entre ellos el MySQL.
SQL se utiliza para controlar todas las funciones que un DBMS (Database Management System)
proporciona a sus usuarios, incluyendo:

Definicin de datos: SQL permite a un usuario definir la estructura y organizacin de los


datos almacenados y de las relaciones entre ellas
Recuperacin de datos: SQL permite a un usuario o a un porgrama de aplicacin recuperar
los datos almacenados de la base de datos y utilizarlos.
Manipulacin de datos: SQL permite a un usuario o a un programa de aplicacin actualizar
la base de datos aadiendo nuevos datos, suprimiendo datos antiguos y modificando datos
previamente almacenados.
Control de acceso: SQL puede ser utilizado para restringir la capacidad de un usuario para
recuperar, aadir y modificar datos, protegiendo as los datos almacenados frente a accesos
no autorizados.
Comparticin de datos: SQL se utiliza para coordinar la comparticin de datos por parte de
usuarios concurrentes, asegurando que no interfieran unos con otros
Integridad de datos: SQL define restricciones de integridad en la base de datos,
protegindola contra corrupciones debidas a actualizaciones inconsistentes o a fallos del
sistema.

Por tanto, SQL es un lenguaje completo de control e interactuacin con un sistema de gestin de
base de datos. A pesar de la imprecisin de su nombre, SQL ha emergido como el lenguaje estndar
para la utilizacin de bases de datos relacionales. SQL es a la vez un potente lenguaje y un lenguaje
relativamente fcil de aprender.
SQL no es en s mismo un sistema de gestin de base de datos, ni un producto autnomo. No se
puede ir a un tienda de informtica y comprar SQL. En su lugar, SQL es parte integral de un
sistema de gestin de base de datos, un lenguaje y una herramienta para comunicarse con el DBMS.
SQL tiene varios elementos de sintaxis que son utilizados en la mayor parte de las instrucciones.
Destacan los Identificadores, Expresiones, Operadores, Comentarios y Palabras Clave
Reservadas. Los Identificadores son los nombres de objetos como tablas, vistas, columnas, bases
de datos y servidores. Los Tipos de datos (nmeros, cadenas, etc.) definen el tipo de datos que
contienen los objetos de datos como columnas, variables y parmetros.
Las Funciones son elementos de sintaxis que toman valores de entrada y devuelven un valor
escalar o un conjunto de valores en forma de tabla. Un ejemplo de funcin es la funcin SUM para
sumar varios valores. Las Expresiones son unidades de sintaxis que SQL puede resolver en valores
nicos. Ejemplos de expresiones son las constantes, las funciones que devuelven un valor nico,
una referencia a una columna o una variable. Los Operadores funcionan con una o ms expresiones
individuales para formar una expresin ms compleja. Los Comentarios son fragmentos de texto
insertado en instrucciones o secuencias de comandos de SQL para explicar el objetivo de la
instruccin. Los comentarios no son ejecutados por SQL. Las Palabras Clave Reservadas son
palabras reservadas que utiliza SQL y no deben emplearse como nombres de objetos de una base
de datos. Cada variedad de SQL tiene sintaxis propia.
Con el SQL se puede definir, manipular y controlar una base de datos relacional.
Las operaciones de SQL reciben el nombre de sentencias y estn formadas por diferentes partes
que se denominan clusulas, tal y como se aprecia en el siguiente ejemplo:

SENTENCIAS SQL

Sentencia que da una cadena con la fecha actual en formato ao, mes, da (AAAA-MM-DD)

Misma operacin que la anterior, pero con una cabecera (ttulo) de columna diferente.

Sentencia que da una cadena con la hora actual en formato horas, minutos, segundos (hh:mm:ss)

Sentencia que devuelve un entero entre 0 y 23 que representa la parte entera de la hora
especificada, aqu le especificamos la hora actual del sistema.

Sentencia que devuelve un entero entre 0 y 59 que representa los minutos de la hora especificada,
aqu le especificamos la hora actual del sistema.

Sentencia que devuelve un entero entre 0 y 59 que representa los segundos de la hora especificada,
aqu le especificamos la hora 12:31:58

Sentencia que devuelve un entero que da el nmero de das entre el ao cero y la fecha dada, aqu
le especificamos la fecha actual del sistema.

Sentencia que devuelve un entero entre 0 y 52 que representa la semana de la fecha dada (las
semanas empiezan en domingo)

Sentencia que devuelve un entero entre 0 (lunes) y 6 (domingo que representa el da de la semana
dada.

Sentencia que devuelve un entero entre 1000 y 9999 que representa el ao de la fecha dada

Sentencia que devuelve la fecha en el formato dado. La sintaxis va de la siguiente manera


date_format(fecha, formato). Donde fecha corresponde a la fecha establecida y el formato
corresponde al formato que ser devuelto por el sistema. Los formatos ms utilizados son: %d que
indica el entero del da, %m indica el entero del mes, %Y indica el entero de la fecha, %H indica el
entero de la hora, %i indica el entero de los minutos, %s indica el entero de los segundos.

Sentencia que devuelve la fecha relativa al entero dado (nmero de das desde el ao 0 hasta la
fecha dada)

Sentencia que devuelve una cadena con el da de la semana relativo a la fecha dada

Sentencia que devuelve un nmero entre 1 y 31 relativo al da del mes para la fecha dada

Sentencia que devuelve un nmero entre 1 y 366 relativa al da del ao para la fecha dada

Sentencia que devuelve un nmero entre 1 y 7 relativo al da de la semana para la fecha dada

Sentencia que aade n unidades de tiempo a la fecha dada. Los posibles valores de tiempo son:
SECOND, MINUTE, HOUR, DAY, MONTH, YEAR, etc.

Sentencia que devuelve el nmero de segundos relativo a la hora dada

Sentencia que devuelve el Valor Absoluto de la Expresin Numrica.

Sentencia que devuelve un nmero aleatorio entre 0 y 1

Sentencia que devuelve el resto de la divisin entre 49 y 2

Sentencia que devuelve la operacin indicada

Sentencia que devuelve 1 si la expresin es verdadera y cero si es falsa. En este caso la expresin
es falsa

La expresin es verdadera, devuelve 1

Las expresiones son distintas. Expresin Verdadera, devuelve 1

Expresiones iguales. Expresin Verdadera, devuelve 1

Expresin Falsa, devuelve 0

Expresin Verdadera, devuelve 1

Expresin falsa, devuelve 0. La expresin significa 2 <= 5 and 5 <= 3

Expresin verdadera, devuelve 1

Misma expresin que la anterior, utilizando el operador de negacin. Expresin falsa, devuelve 0

Sentencia que retorna el primer valor no nulo de la lista.

No existen valores no nulos. Retorna NULL porque no encuentra valor.

Sentencia que devuelve el mayor valor de la lista.

Sentencia que retorna el mayor valor de la lista con una cabecera de columna diferente.

Sentencia que devuelve la posicin de la primera ocurrencia de la subcadena en la cadena


empezando a buscar a partir de la primera posicin de la cadena.

Sentencia que repite la cadena el nmero de veces especificado, en el ejemplo utcd corresponde a
la cadena y 5 la cantidad de veces que se deber repetir.

Sentencia que reemplaza por la tercera cadena todas las apariciones de la segunda cadena en la
primera cadena. En el ejemplo Villarrica corresponde a la primera cadena, a a la segunda, y ma a
la tercera cadena.

Sentencia que devuelve la cadena en forma invertida.

Se considera la sentencia rpad(cadena, n, cadena1). Sentencia que aade el valor de cadena1 a la


derecha del valor de la cadena las veces que sea necesario hasta que la cadena resultante tenga el
valor de n caracteres.

Se considera la sentencia lpad(cadena, n, cadena1). Sentencia que aade el valor de cadena1 a la


izquierda del valor de la cadena las veces que sea necesario hasta que la cadena resultante tenga el
valor de n caracteres.

Sentencia que devuelve la cadena de caracteres despus de truncar todos los espacios en blanco a
la derecha.

Sentencia que devuelve la cadena de caracteres despus de truncar todos los espacios en blanco a
la izquierda.

Sentencia que devuelve la parte de la cadena que va desde la posicin especificada hasta el final.

Se considera la sentencia substring(cadena, n, m) y devuelve m caracteres de la cadena a partir


de n posicin de la cadena.

Sentencia que busca la primera cadena dada en la lista de cadenas y devuelve la posicin del primer
elemento.

Siendo la sentencia insert(cadena, posicin, n, subcadena). Se inserta en la cadena, a partir de la


posicin dada, en los primeros n caracteres de la cadena el valor de la subcadena.

Sentencia que devuelve el valor dado en hexadecimal

Sentencia que devuelve el valor dado en octal.

Sentencia que devuelve la cadena en minsculas.

Misma operacin que la sentencia anterior

Sentencia que devuelve la cadena en maysculas

Siendo la sentencia left(cadena, n). Devuelve los n elementos ms a la izquierda de la cadena

Siendo la sentencia right(cadena, n). Devuelve los n elementos ms a la derecha de la cadena

Sentencia que devuelve el nmero de caracteres de la cadena especificada

Siendo la sentencia mid(cadena, posicin, n). Da una subcadena de la cadena que comienza en la
posicin dada y que tiene una longitud de n caracteres.

Sentencia que devuelve el cdigo ASCII del carcter ms a la izquierda de la cadena.

Misma operacin que la anterior pero con una cabecera de columna diferente.

Sentencia que devuelve el valor binario del nmero especificado.

Sentencia que devuelve el carcter al que pertenece en la tabla del cdigo ASCII el valor establecido

Sentencia que devuelve 1 si se encuentra el valor dentro de la lista, de lo contrario devuelve 0

Sentencia que devuelve 1 si el valor establecido es nulo, de lo contrario devuelve 0

Sentencia que retorna la negacin de 45

Sentencia que retorna la negacin de 52

Sentencia que devuelve la conclusin final de una conjuncin. Si es verdadera devuelve 1, sino 0.

Sentencia que devuelve la conclusin final de una disyuncin. Si es verdadera devuelve 1, sino 0

Sentencia que funciona como selector. Selecciona el caso que se cumple y muestra el resultado

Siendo la sentencia if(condicin, exp1, exp2). Devuelve exp2 si condicin es verdadera y exp3 si
condicin es falsa.

Ejemplo de utilizacin de dos sentencias al mismo tiempo

Ejemplo de utilizacin de tres sentencias al mismo tiempo

You might also like