Sei sulla pagina 1di 4

BORRADO DE DATOS Una de las recomendaciones de ley es simplemente hacer hincapi en el hecho de que el borrado es una operacin por

dems delicada y que, debemos poner todos los mtodos de prevencin para evitar que el usuario borre accidentalmente los datos que NO deberan ser sacados de la base. Hecha la advertencia anterior, veamos la sintaxis de la sentencia DELETE, que por cierto es la encargada de borrar los datos de la base: DELETE FROM nombre_tabla WHERE condicion Observacin importante: Si omitimos la condicin WHERE el contenido TOTAL de la tabla se borrar: DELETE FROM uno; La sentencia de arriba hace que la totalidad del contenido de la tabla uno se borre, de tal suerte que si luego hacemos una consulta como: SELECT * FROM uno; LLAVES PRIMARIAS Una palabra sobre diferenciacin. Es necesario asegurarnos de que las entradas en una base de datos puedan ser diferenciadas de otras. La forma de lograr esto, es a travs de lo que suele llamarse una LLAVE PRIMARIA. Lo que una de estas llaves primarias es, es simplemente una distincin (usualmente un nmero) que nos ayude a distinguir el contenido de una fila de otra, incluso si el contenido de una columna es idntico a otro. Cuando creamos o modificamos las columnas de una tabla nos podemos dar el lujo de utilizar un par de sentencias que explicamos a continuacin: NOT NULL: Esta sentencia le dice a MySQL que el valor que debe guardarse en la columna en donde la utilizamos no puede ser nulo, lo cual previene nuestra base de guardar no valores en sus contenedores. AUTO_INCREMENT: Esta sentencia hace que la columna a la que se le aplica le de un valor numrico que se incrementar automticamente cada vez que una nueva FILA sea agregada a nuestra base de datos. CREATE TABLE person ( id SMALLINT UNSIGNED NOT NULL AUTO_INCREMENT, name CHAR(60) NOT NULL, PRIMARY KEY (id) );

funciones MySQL ms utilizadas: MIN Devuelve el valor mnimo de una expresin MAX Devuelve el valor mximo de una expresin COUNT Devuelve el nmero de valores distintos de NULL en las filas recuperadas por una sentencia SELECT AVG Devuelve el valor medio ADDDATE Suma un intervalo de tiempo a una fecha ADDTIME Suma tiempos ASIGNACIN DE VARIABLES Para asignar una variable simplemente utilizamos la palabra reservada SET, seguida por el signo de arroba y el nombre de la variable, posteriormente el signo de igual (que en este caso sera el signo de asignacin) y el valor de la variable, de la siguiente forma: SET @nombre = Tomas; Lo que hemos hecho en este breve ejemplo es asignar a la variable nombre el valor de la cadena de caracteres Tomas. Para desplegar el valor de la variable basta con recurrir a nuestro viejo amigo SELECT de la siguiente manera: SELECT @nombre; Todo lo anterior nos da una salida como la siguiente: Sin embargo, la utilidad de la asignacin de variables va muchos ms all, pudiendo asignar el valor de una columna de una tabla a una variable de una forma similar a la siguiente: SELECT @nombre := nombre_columna from tabla1 where condicin; LA FUNCIN IF Las decisiones en MySQL, al igual que en la gran mayora de los lenguajes de programacin, se hace con la sentencia IF (que es SI condicionante en espaol), lo cual sonar ms que conocido para la gran mayora que tenga experiencia en algn lenguaje de programacin. La funcin IF en MySQL acepta tres argumentos, el primero es la condicin en si, el segundo es la operacin a llevar se cabo si la evaluacin resulta cierta, y el tercero es la operacin a efectuarse si la evaluacin resulta falsa SELECT nombre, IF(edad <= 20, Joven, Adulto) FROM personas ORDER BY edad;

En la consulta anterior, todas las personas en nuestra base de datos cuya edad sea menor o igual que 20 tendr un mote de Joven, mientras que todas las personas mayores de 20 tendrn uno de Adulto. NORMALIZACIN El proceso de normalizacin de bases de datos consiste en aplicar una serie de reglas a las relaciones obtenidas tras el paso del modelo entidadrelacin al modelo relacional. Las bases de datos relacionales se normalizan para:

Evitar la redundancia de los datos. Evitar problemas de actualizacin de los datos en las tablas. Proteger la integridad de los datos.

En el modelo relacional es frecuente llamar tabla a una relacin, aunque para que una tabla sea considerada como una relacin tiene que cumplir con algunas restricciones:

Cada tabla debe tener su nombre nico. No puede haber dos filas iguales. No se permiten los duplicados. Todos los datos en una columna deben ser del mismo tipo.

Claves Una clave primaria es aquella columna (o conjunto de columnas) que identifica nicamente a una fila. La clave primaria es un identificador que va a ser siempre nico para cada fila. Se acostumbra a poner la clave primaria como la primera columna de la tabla pero es ms una conveniencia que una obligacin. Muchas veces la clave primaria es numrica auto-incrementada, es decir, generada mediante una secuencia numrica incrementada automticamente cada vez que se inserta una fila.

En una tabla puede que tengamos ms de una columna que puede ser clave primaria por s misma. En ese caso se puede escoger una para ser la clave primaria y las dems claves sern claves candidatas. Una clave ajena (foreign key o clave fornea) es aquella columna que existiendo como dependiente en una tabla, es a su vez clave primaria en otra tabla. Una clave alternativa es aquella clave candidata que no ha sido seleccionada como clave primaria, pero que tambin puede identificar de

forma nica a una fila dentro de una tabla. Ejemplo: Si en una tabla clientes definimos el nmero de documento (id_cliente) como clave primaria, el nmero de seguro social de ese cliente podra ser una clave alternativa. En este caso no se us como clave primaria porque es posible que no se conozca ese dato en todos los clientes.

Una clave compuesta es una clave que est compuesta por ms de una columna. La visualizacin de todas las posibles claves candidatas en una tabla ayudan a su optimizacin. Por ejemplo, en una tabla PERSONA podemos identificar como claves su DNI, o el conjunto de su nombre, apellidos, fecha de nacimiento y direccin. Podemos usar cualquiera de las dos opciones o incluso todas a la vez como clave primaria, pero es ms ptimo en la mayora de sistemas la eleccin del menor nmero de columnas como clave primaria.