Sunteți pe pagina 1din 5

SQL Definicin y Manipulacin de Datos El SQL (Structured Query Language) es un estndar aceptado en productos de bases de datos, adems SQL

es un ejemplo de lenguaje orientado a transformaciones es decir un lenguaje diseado para usar relaciones con el fin de transformar los datos, SQL tiene algunos componentes que son: Un lenguaje de definicin de Datos Un lenguaje de manipulacin de datos La instruccin SELECT es la instruccin mas importante y se utiliza para las consultas, la clusula SELECT indica las columnas y los datos calculados que deben aparecer en la tabla de resultados, mientras que la clausula WHERE selecciona las filas que hay que incluir en la tabla de resultados aplicando las condiciones de bsqueda a las filas de la tabla, hay tres tipos de consultas escalar, de fila y de tabla, a dems permite utilizar las operaciones de conjuntos unin, interseccin y diferencia. Adems del lenguaje DML incluye las instrucciones de INSERT, UPDATE, DELETE. Tipos datos SQL de ISO Identificadores.- Se utilizan para identificar objetos en la BD, cada identificador no puede tener mas de 128 caracteres, debe comenzar con una letra y adems no pueden contener espacio Tipos datos SQL Escalares Datos Booleanos.- Estn compuestos de los valores de verdad true y false Datos de Carcter.- Estn compuestos de una sentencia de caracteres extrados de un conjunto de caracteres definidos por la implementacin es decir definido por SQL Datos de Bit.,- Se utiliza para definir secuencia de dgitos binarios. Los datos numricos exactos se utilizan para definir nmeros con una representacin exacta, cada numero esta compuesto por dgitos, por una coma y por un signo. Los operadores escalares son una expresin que proporciona como resultado de la evaluacin un valor escalar. Vamos a considerar 5 tipos distintos de restricciones de integridad que son: Datos requeridos Restriccin de Dominios Integridad de entidades Integridad referencial Restricciones generales.

Para crear una BD se utiliza la palabra CREATE, para la modificacin de la definicin de una tabla se utiliza ALTER TABLE , para la eliminacin DROP TABLE, para la creacin de un ndice CREATE INDEX, y para la creacin de un avista CREATE VIEW El DDL, lenguaje de definicin de datos Hasta ahora hemos estudiado las sentencias que forman parte del DML (Data Management Language) lenguaje de manipulacin de datos, todas esas sentencias sirven para recuperar, insertar, borrar, modificar los datos almacenados en la base de datos; lo que veremos en este tema son las sentencias que afectan a la estructura de los datos. El DDL (Data Definition Language) lenguaje de definicin de datos es la parte del SQL que ms vara de un sistema a otro ya que esa area tiene que ver con cmo se organizan internamente los datos y eso, cada sistema lo hace de una manera u otra. As como el DML de Microsoft Jet incluye todas las sentencias DML que nos podemos encontrar en otros SQLs (o casi todas), el DDL de Microsoft Jet en cambio contiene menos instrucciones que otros sistemas. CREATE TABLE La sentencia CREATE TABLE sirve para crear la estructura de una tabla no para rellenarla con datos, nos permite definir las columnas que tiene y ciertas restricciones que deben cumplir esas columnas. La sintaxis es la siguiente: nbtabla: nombre de la tabla que estamos definiendo nbcol: nombre de la columna que estamos definiendo tipo: tipo de dato de la columna, todos los datos almacenados en la columna debern ser de ese tipo. Para ver qu tipos de datos se pueden emplear haz clic aqu Una restriccin consiste en la definicin de una caracterstica adicional que tiene una columna o una combinacin de columnas, suelen ser caractersticas como valores no nulos (campo requerido), definicin de ndice sin duplicados, definicin de clave principal y definicin de clave fornea (clave ajena o externa, campo que sirve para relacionar dos tablas entre s). restriccin1: una restriccin de tipo 1 es una restriccin que aparece dentro de la definicin de la columna despus del tipo de dato y afecta a una columna, la que se est definiendo. restriccin2: una restriccin de tipo 2 es una restriccin que se define despus de definir todas las columnas de la tabla y afecta a una columna o a una combinacin de columnas. Para escribir una sentencia CREATE TABLE se empieza por indicar el nombre de la tabla que queremos crear y a continuacin entre parntesis indicamos separadas por comas las definiciones

de cada columna de la tabla, la definicin de una columna consta de su nombre, el tipo de dato que tiene y podemos aadir si queremos una serie de especificaciones que debern cumplir los datos almacenados en la columna, despus de definir cada una de las columnas que compone la tabla se pueden aadir una serie de restricciones, esas restricciones son las mismas que se pueden indicar para cada columna pero ahora pueden afectar a ms de una columna por eso tienen una sintaxis ligeramente diferente. Una restriccin de tipo 1 se utiliza para indicar una caracterstica de la columna que estamos definiendo, tiene la siguiente sintaxis: La clusula NOT NULL indica que la columna no podr contener un valor nulo, es decir que se deber rellenar obligatoriamente y con un valor vlido (equivale a la propiedad requerido S de las propiedades del campo). La clusula CONSTRAINT sirve para definir una restriccin que se podr eliminar cuando queramos sin tener que borrar la columna. A cada restriccin se le asigna un nombre que se utiliza para identificarla y para poder eliminarla cuando se quiera. Como restricciones tenemos la de clave primaria (clave principal), la de ndice nico (sin duplicados), la de valor no nulo, y la de clave fornea. La clusula PRIMARY KEY se utiliza para definir la columna como clave principal de la tabla. Esto supone que la columna no puede contener valores nulos ni pueden haber valores duplicados en esa columna, es decir que dos filas no pueden tener el mismo valor en esa columna. En una tabla no pueden haber varias claves principales, por lo que no podemos incluir la clusula PRIMARY KEY ms de una vez, en caso contrario la sentencia da un error. No hay que confundir la definicin de varias claves principales con la definicin de una clave principal compuesta por varias columnas, esto ltimo s est permitido y se define con una restriccin de tipo 2. La clusula UNIQUE sirve para definir un ndice nico sobre la columna. Un ndice nico es un ndice que no permite valores duplicados, es decir que si una columna tiene definida un restriccin de UNIQUE no podrn haber dos filas con el mismo valor en esa columna. Se suele emplear para que el sistema compruebe el mismo que no se aaden valores que ya existen, por ejemplo si en una tabla de clientes queremos asegurarnos que dos clientes no puedan tener el mismo D.N.I. y la tabla tiene como clave principal un cdigo de cliente, definiremos la columna dni con la restriccin de UNIQUE. La clusula NOT NULL indica que la columna no puede contener valores nulos, cuando queremos indicar que una columna no puede contener el valor nulo lo podemos hacer sin poner la clusula CONSTRAINT, o utilizando una clusula CONSTRAINT. La ltima restriccin que podemos definir sobre una columna es la de clave fornea, una clave fornea es una columna o conjunto de columnas que contiene un valor que hace referencia a una fila de otra tabla, en una restriccin de tipo 1 se puede definir con la clusula REFERENCES,

despus de la palabra reservada indicamos a qu tabla hace referencia, opcionalmente podemos indicar entre parntesis el nombre de la columna donde tiene que buscar el valor de referencia, por defecto coge la clave principal de la tabla2, si el valor que tiene que buscar se encuentra en otra columna de tabla2, entonces debemos inidicar el nombre de esta columna entre parntesis, adems slo podemos utilizar una columna que est definida con una restriccin de UNIQUE, si la columna2 que indicamos no est definida sin duplicados, la sentencia CREATE nos dar un error. Si quieres repasar conceptos de clave fornea e integridad referencial haz clic aqu Para seguir con la instruccin CREATE TABLE pasa a la siguiente pgina... Ejemplo: CREATE TABLE tab1 ( col1 INTEGER CONSTRAINT pk PRIMARY KEY, col2 CHAR(25) NOT NULL, col3 CHAR(10) CONSTRAINT uni1 UNIQUE, col4 INTEGER, col5 INT CONSTRAINT fk5 REFERENCES tab2 ); Con este ejemplo estamos creando la tabla tab1 compuesta por: una columna llamada col1 de tipo entero definida como clave principal, una columna col2 que puede almacenar hasta 25 caracteres alfanumricos y no puede contener valores nulos, una columna col3 de hasta 10 caracteres que no podr contener valores repetidos, una columna col4 de tipo entero sin ninguna restriccin, y una columna col5 de tipo entero clave fornea que hace referencia a valores de la clave principal de la tabla tab2.

SQL-86 tambien conocida como SQL-87 SQL-89 SQL-92 tambien conocida como SQL2 SQL:1999 tambien conocida como SQL2000 SQL:2003 SQL:2006 SQL:2008

Tarea: para el mircoles entregrselo a omar alba

1. Buscar un libro de base de datos y sacar un resumen para acorden de que es el lenguaje de manipulacin de datos, definicin de lenguaje de datos, instancias, etc. 2. Cuales manejan que versiones SQL Oracle, mysql, etc. 3. Buscar el libro :Gua de la certificacin de administracin mysql versin 5 o 6

Instalar en una maquina virtual en una instalacin minima de deban sin interfaz grafica solo smbolos del sistema, tenerla lista para el jueves. Virtualbox

S-ar putea să vă placă și