CHAR VARCHAR2 VARCHAR NCHAR NVARCHAR2 LONG

Save this PDF as:
 WORD  PNG  TXT  JPG

Tamaño: px
Comenzar la demostración a partir de la página:

Download "CHAR VARCHAR2 VARCHAR NCHAR NVARCHAR2 LONG"

Transcripción

1 CREACIÓN DE TABLAS Las tablas son las unidades básicas de almacenamiento de datos. Veremos cómo se crean las tablas en Oracle y como se definen las restricciones de integridad asociadas a dichas tablas. En ausencia de dominios, se definirán las columnas y se asociarán todas las restricciones de integridad semánticas admitidas (Nulos, Claves Primarias, Claves Alternativas (Claúsula UNIQUE)) y restricciones de integridad sobre valores de columnas en la tabla (Cláusula CHECK). TIPOS DE DATOS EN ORACLE Se muestra los tipos de datos / datatypes disponibles en Oracle para seleccionar el tipo de registro de una tabla Oracle. También indicamos sus características (tamaño máximo, peculiaridades, etc). Es importante conocer los tipos de datos disponibles en un Sistema Gestor de Base de Datos (SGBD), de esta forma podremos optimizar al máximo el uso de recursos de nuestras aplicaciones. A continuación os indicamos todos los tipos de datos de Oracle y sus características básicas: TIPO CARACTERISTICAS OBSERVACIONES Para crear una tabla es necesario tener el privilegio CREATE TABLE y un Área de Almacenamiento. Sintaxis de creación de tabla. CREATE TABLE [esquema.]tabla {(columna [restricción_columna] [restricción_tabla] [,columna ] [TABLESPACE nom_tablespace tipo_de_datos [DEFAULT expr] CHAR VARCHAR2 Cadena de caracteres (alfanuméricos) de longitud fija Cadena de caracteres de longitud variable Entre 1 y 2000 bytes como máximo. Aunque se introduzca un valor más corto que el indicado en el tamaño, se rellenará al tamaño indicado. Es de longitud fija, siempre ocupará lo mismo, independientemente del valor que contenga Entre 1 y 4000 bytes como máximo. El tamaño del campo dependerá del valor que contenga, es de longitud variable. CLUSTER nom_cluster (columna [,columna])] [AS consulta] }; VARCHAR Cadena de caracteres de longitud variable En desuso, se utiliza VARCHAR2 en su lugar restricción_columna y restricción_tabla: son las restricciones impuestas a la columna y tabla. nom_tablespace: indica el espacio lógico donde se quiere almacenar la tabla. Si no se especifica se utiliza el asignado por defecto. nom_cluster: es el nombre del agrupamiento si la tabla forma parte de uno. Las columnas listadas son las columnas que la tabla aporta al agrupamiento, generalmente, las claves primarias. Si se especifica un clúster ya no se especifica el tablespace ya que se utilizará el tablespace donde se encuentra el agrupamiento. consulta: inserta los registros procedentes de una consulta. No se especificarán los tipos de datos ya que se toman de la consulta. La restricción PRIMARY KEY no se copia y se añade con ALTER TABLE. NCHAR NVARCHAR2 Cadena de caracteres de longitud fija que sólo almacena caracteres Unicode Cadena de caracteres de longitud variable que sólo almacena caracteres Unicode Entre 1 y 2000 bytes como máximo. El juego de caracteres del tipo de datos (datatype) NCHAR sólo puede ser AL16UTF16 ó UTF8. El juego de caracteres se especifica cuando se crea la base de datos Oracle Entre 1 y 4000 bytes como máximo. El juego de caracteres del tipo de datos (datatype) NCHAR sólo puede ser AL16UTF16 ó UTF8. El juego de caracteres se especifica cuando se crea la base de datos Oracle LONG Cadena de caracteres de longitud variable Como máximo admite hasta 2 GB (2000 MB). Los datos LONG deberán ser convertidos apropiadamente al moverse entre diversos sistemas. Lic. Vladimir Cotaquispe Gutiérrez. 1 E.P. DE INGENIERIA DE SISTEMA E INFORMATICA Lic. Vladimir Cotaquispe Gutiérrez. 2 E.P. DE INGENIERIA DE SISTEMA E INFORMATICA

2 Este tipo de datos está obsoleto (en desuso), en su lugar se utilizan los datos de tipo LOB (CLOB, NCLOB). Oracle recomienda que se convierta el tipo de datos LONG a alguno LOB si aún se está utilizando. No se puede utilizar en claúsulas WHERE, GROUP BY, ORDER BY, CONNECT BY ni DISTINCT BFILE Almacena datos binarios no estructurados en archivos del sistema operativo, fuera de la base de datos. Una columna BFILE almacena un localizador del archivo a uno externo que contiene los datos Admiten hasta 8 terabytes. El administrador de la base de datos debe asegurarse de que exista el archivo en disco y de que los procesos de Oracle tengan permisos de lectura para el archivo. Una tabla sólo puede contener una columna de tipo LONG. Sólo soporta acceso secuencial. ROWID físico almacena la dirección de fila en las tablas, las tablas en clúster, los índices, excepto en las índices-organizados (IOT). LONG RAW Almacenan cadenas binarias de ancho variable Hasta 2 GB. En desuso, se sustituye por los tipos LOB. ROWID lógico almacena la dirección de fila en tablas de índice-organizado (IOT). RAW Almacenan cadenas binarias de ancho variable Hasta bytes. En desuso, se sustituye por los tipos LOB. Un ejemplo del valor de un campo ROWID podría ser: "AAAIugAAJAAC4AhAAI". El formato es el siguiente: LOB (BLOG, CLOB, NCLOB, BFILE) BLOB CLOB NCLOB Permiten almacenar y manipular bloques grandes de datos no estructurados (tales como texto, imágenes, videos, sonidos, etc) en formato binario o del carácter Permite almacenar datos binarios no estructurados Almacena datos de tipo carácter Almacena datos de tipo carácter Admiten hasta 8 terabytes (8000 GB). Una tabla puede contener varias columnas de tipo LOB. Soportan acceso aleatorio. Las tablas con columnas de tipo LOB no pueden ser replicadas. Admiten hasta 8 terabytes Admiten hasta 8 terabytes Admiten hasta 8 terabytes. Guarda los datos según el juego de caracteres Unicode nacional. ROWID Almacenar la dirección única de cada fila de la tabla de la base de datos Para "OOOOOOFFFBBBBBBRRR", OOOOOO: segmento de la base de datos (AAAIug en el ejemplo). Todos los objetos que estén en el mismo esquema y en el mismo segmento tendrán el mismo valor. FFF: el número de fichero del tablespace relativo que contiene la fila (fichero AAJ en el ejemplo). BBBBBB: el bloque de datos que contiene a la fila (bloque AAC4Ah en el ejemplo). El número de bloque es relativo a su fichero de datos, no al tablespace. Por lo tanto, dos filas con números de bloque iguales podrían residir en diferentes datafiles del mismo tablespace. RRR: el número de fila en el bloque (fila AAI en el ejemplo). Lic. Vladimir Cotaquispe Gutiérrez. 3 E.P. DE INGENIERIA DE SISTEMA E INFORMATICA Este tipo de campo no aparece en los SELECT ni se puede modificar en los UPDATE, ni en los INSERT. Tampoco se puede utilizar en los Lic. Vladimir Cotaquispe Gutiérrez. 4 E.P. DE INGENIERIA DE SISTEMA E INFORMATICA

3 CREATE. Es un tipo de datos utilizado exclusivamente por Oracle. Sólo se puede ver su valor utilizando la palabra reservada ROWID, por ejemplo: Para no indicar la precisión y sí la escala podemos utilizar: nombre_columna NUMBER (*, escala) select rowid, nombre, apellidos from clientes Ejemplo 2: Para introducir números que no estén el el formato estándar de Oracle se puede utilizar la función TO_NUMBER. SELECT ROWID, SUBSTR(ROWID,15,4) "Fichero", SUBSTR(ROWID,1,8) "Bloque", SUBSTR(ROWID,10,4) "Fila" FROM proveedores Ejemplo 3: una forma de saber en cuántos ficheros de datos está alojada una tabla: FLOAT Almacena tipos de datos numéricos en punto flotante Es un tipo NUMBER que sólo almacena números en punto flotante El tipo de datos DATE almacena el año (incluyendo el siglo), el mes, el día, las horas, los minutos y los segundos (después de medianoche). SELECT COUNT(DISTINCT(SUBSTR(ROWID,7,3))) "Numero ficheros " FROM facturacion Oracle utiliza su propio formato interno para almacenar fechas. UROWID NUMBER ROWID universal Almacena números fijos y en punto flotante Admite ROWID a tablas que no sean de Oracle, tablas externas. Admite tanto ROWID lógicos como físicos. Se admiten hasta 38 dígitos de precisión y son portables a cualquier entre los diversos sistemas en que funcione Oracle. Para declarar un tipo de datos NUMBER en un CREATE ó UPDATE es suficiente con: nombre_columna NUMBER opcionalmente se le puede indicar la precisión (número total de dígitos) y la escala (número de dígitos a la derecha de la coma, decimales, los cogerá de la precisión indicada): nombre_columna NUMBER (precision, escala) DATE TIMESTAMP Almacena un punto en el tiempo (fecha y hora) Almacena datos de tipo hora, fraccionando los segundos Los tipos de datos DATE se almacenan en campos de longitud fija de siete octetos cada uno, correspondiendo al siglo, año, mes, día, hora, minuto, y al segundo. Para entrada/salida de fechas, Oracle utiliza por defecto el formato DD-MMM-AA. Para cambiar este formato de fecha por defecto se utiliza el parámetro NLS_DATE_FORMAT. Para insertar fechas que no estén en el mismo formato de fecha estándar de Oracle, se puede utilizar la función TO_DATE con una máscara del formato: TO_DATE (el 13 de noviembre de 1992, DD del MES, YYYY ) Si no se indica la precisión se tomará en función del número a guardar, si no se indica la escala se tomará escala cero. TIMESTAMP WITH TIME Almacena datos de tipo hora incluyendo la zona horaria (explícita), Lic. Vladimir Cotaquispe Gutiérrez. 5 E.P. DE INGENIERIA DE SISTEMA E INFORMATICA Lic. Vladimir Cotaquispe Gutiérrez. 6 E.P. DE INGENIERIA DE SISTEMA E INFORMATICA

4 ZONE TIMESTAMP WITH LOCAL TIME ZONE fraccionando los segundos Almacena datos de tipo hora incluyendo la zona horaria local (relativa), franccionando los segundos Cuando se usa un SELECT para mostrar los datos de este tipo, el valor de la hora será ajustado a la zona horaria de la sesión actual 3. Primary Key. Clave primaria. 4. Check. D efinición de reglas complejas. 5. Foreign Key. Restricciones de integridad referencial. Soporta las acciones Update y Delete Restrict y Delete Cascade. Se declaran al crear ó modificar la tabla (CREATE/ALTER TABLE). XMLType Tipo de datos abstracto. En realidad se trata de un CLOB. Se asocia a un esquema XML para la definición de su estructura. Guías para el uso - Es conveniente asignarles un nombre autodefinido que permita referirlas de forma fácil con posterioridad. Si el usuario no les asigna nombre el sistema las denomina SYS_C<n>, donde <n> es un número entero diferente para cada restricción. De los tipos anteriores, los comunmente utilizados son: VARCHAR2 (cadenas de texto no muy grandes), DATE (fechas, horas), NUMBER (números), BLOB (ficheros de tipo word, excel, access, video, sonido, imágenes, etc) y CLOB (cadenas de texto muy grandes). - Pueden ser definidas a la vez que se crea la tabla (dentro del CREATE TABLE) o posteriormente (ALTER TABLE). - Se pueden definir a nivel de columna o a nivel de tabla. Restricciones Comprobar restricciones existentes Las reglas de negocio se implementan en ORACLE mediante restricciones (constraints), disparadores (triggers) o código de aplicación. El ORACLE Server se basa en las restricciones para prevenir la entrada de datos no válidos en las tablas. En suma, al trabajar con ORACLE, las restricciones se pueden emplear para: Forzar el cumplimiento de reglas por los datos de una tabla cuando se inserta una fila, se elimina o se modifica. La restricción debe ser satisfecha para que la operación DML se concluya con éxito. Prevenir el borrado de una tabla cuando existen dependencias desde otras tablas. Proveer reglas para otras herramientas (ORACLE DEVELOPER u otros CASE). Es importante que los datos de una base de datos, estén sujetos a reglas de integridad predefinidas. Oracle permite definir y forzar que se verifiquen las reglas de integridad de los datos declarando Restricciones de Integridad y definiendo Database Triggers. Una Restricción de Integridad, es un método declarativo de definir una restricción para una columna de una tabla. Oracle soporta: Con la sentencia DESCRIBE solo se muestran las restricciones NOT NULL. Para ver las demás es necesario consultar la vista USER_CONSTRAINTS del diccionario de datos. Ejemplos: Obtener la lista de restricciones definidas en el diccionario de datos: SELECT * FROM USER_CONSTRAINTS; NOTA: En el listado C= CHECK, P= PRIMARY KEY, R= FOREIGN KEY. NOT NULL se representa como un caso especial de CHECK. Igual, pero solo para la tabla Empleados: SELECT * FROM USER_CONSTRAINT S WHERE table_name= Emplea dos ; Comprobar las columnas asociadas 1. Not Null. No admite valores nulos. 2. Unique. Sólo admite valores únicos. Lic. Vladimir Cotaquispe Gutiérrez. 7 E.P. DE INGENIERIA DE SISTEMA E INFORMATICA Las columnas asociadas con cada restricción se pueden consultar en la vista. Lic. Vladimir Cotaquispe Gutiérrez. 8 E.P. DE INGENIERIA DE SISTEMA E INFORMATICA

5 USER_CONS_COLUMNS del diccionario de datos. SELECT * FROM USER_CONS_COLUMNS WHERE table_name= Empleados ; Otras vistas del diccionario de datos útiles para este tema son ALL_CONSTRAINTS y ALL_CONS_COLUMNS. Definición de Restricciones al Crear una Tabla CREATE TABLE [<esquema>.] ( <tipo de dato> [DEFAULT <expresión>] [<restricción de columna>], Sintaxis para restricciones de integridad. Pueden ser aplicadas sobre columnas, que se colocan tras la definición sobre la tabla, que implican más de una columna. Restricciones sobre columnas. [CONSTRAINT restricción] [NOT NULL [UNIQUE PRIMARYKEY] [REFERENCES [esquema.]tabla [(columna)] [ON DELETE CASCADE] ] [CHECK (condición) ] ] [[USING INDEX [TABLESPACE nom_tablespace ]] DISABLE] de la columna o AS <subconsulta> [<restricción de tabla>] [, ] <esquema> Nombre del propietario. Sólo es necesario indicarlo si no es el mismo que el del esquema. Nombre de la tabla <expresión> Especifica un valor por defecto que sería usado si una operación INSERT no especifica valor Nombre de la columna <tipo de dato> Tipo de dato de la columna y su longitud <restricción de columna> Restricción de integridad que se define como parte de la definición de una columna particular Restricción: nombre que le damos a la restricción. Por defecto, Oracle le signa SY_Cn, siendo n un entero. NOT NULL: no admite valores nulos. UNIQUE: los valores de la columna son únicos. PRIMARYKEY: la columna es clave primaria. REFERENCES: indica que la columna es clave ajena en una relación de integridad referencial. ON DELETE CASCADE: Mantiene la integridad referencial eliminando los registros del lado relacionado cuando se eliminan los registros del lado principal de la relación. CHECK: Admite las mismas todo valor que se introduzca en la columna debe cumplir la condición expresiones que una cláusula WHERE. USING INDEX: indica el tablespace donde se almacenan los índices generados por UNIQUE y PRIMARYKEY. DISABLE: permite desactivar la restricción al crearla. Se puede activar con ENABLE/DISABLE del ALTER TABLE. <restricción de tabla> Restricción de integridad que se define fuera de las definición de las columnas, es decir, a nivel de tabla Lic. Vladimir Cotaquispe Gutiérrez. 9 E.P. DE INGENIERIA DE SISTEMA E INFORMATICA Lic. Vladimir Cotaquispe Gutiérrez. 10 E.P. DE INGENIERIA DE SISTEMA E INFORMATICA

6 Restricciones sobre tablas. [CONSTRAINT restricción] [[UNIQUE PRIMARYKEY] (columna [, columna] ) [FOREIGN KEY (columna [, columna] ) REFERENCES [esquema.]tabla [(columna)] [ON DELETE CASCADE] ] [CHECK (condición) ] ] [[USING INDEX [TABLESPACE nom_tablespace ]] DISABLE] 1. Restricción NOT NULL También llamada de obligatoriedad. Sólo se puede definir a nivel de columna, no de tabla. [CONSTRAINT ] [NOT] NULL nombrevarchar2(20) NOT NULL, Fecha_alta DATE CONSTRAINT fecha_obli NOT NULL, 2. Restricción UNIQUE Es una restricción de unicidad. Impide que pueden existir dos filas con el valor de la columna (unique key) o columnas (composite unique key). Permite la entrada de valores nulos salvo que se establezca a la vez una restricción NOT NULL. Basta con que una de las columnas tome para el valor nulo para que se considere que se cumple la restricción de unicidad. Las composite unique key sólo se pueden crear a nivel de tabla. El ORACLE Server crea un índice de valores únicos como mecanismo para conrolar este tipo de restricciones. A nivel de columna: A nivel de tabla: [CONSTRAINT ] UNIQUE [CONSTRAINT ] UNIQUE ([,]) apellidos Nombre de la columna VARCHAR2(40) NOT NULL, nombre VARCHAR2(20), VARCHAR2(25) UNIQUE, CONSTRAINT apel_nom_unico UNIQUE (apellidos,nombre), Lic. Vladimir Cotaquispe Gutiérrez. 11 E.P. DE INGENIERIA DE SISTEMA E INFORMATICA Lic. Vladimir Cotaquispe Gutiérrez. 12 E.P. DE INGENIERIA DE SISTEMA E INFORMATICA

7 3. Restricción PRIMARY KEY Es una restricción de clave primaria. Sólo se puede definir una para cada tabla. Esta restricción equivale a una restricción de unicidad (UNIQUE) y otra de obligatoriedad (NOT NULL) combinadas. Igual que para UNIQUE, existen primary key y composite primary key (formadas por más de una columna). Ëstas segundas se definen a nivel de tabla. El ORACLE Server crea un índice de valores únicos como mecanismo para controlar la unicidad en este tipo de restricciones. A nivel de columna: A nivel de tabla: [CONSTRAINT ] PRIMARY KEY [CONSTRAINT ] PRIMARY KEY ([,]) 4. Restricción FOREIGN KEY Es una restricción de integridad referencial. Designa a una o varias columnas como clave ajena y establece una relación de referencia con una clave primaria o clave unica (UNIQUE) de otra tabla o de la misma. El valor de la clave ajena debe coincidir con un valor existente en la tabla referenciada (parent table) o ser nulo. Las claves ajenas son puramente lógicas (están basadas en valores de datos) y por tanto no son punteros físicos. Las composite foreign key están formadas por más de una columna y deben ser definidas a nivel de tabla. A nivel de columna: A nivel de tabla: [CONSTRAINT ] REFERENCES [<esquema>]. [([,])] [ON DELETE {CASCADE SET NULL}] [CONSTRAINT ] Nombre de la columna FOREIGN KEY ([,]) REFERENCES [<esquema>]. [([,])] CREATE TABLE Departamentos ( num NUMBER(4), nombrevarchar2(30) NOT NULL, <esquema> [ON DELETE {CASCADE SET NULL}] Nombre del propietario. Sólo es necesario indicarlo si no es el mismo que el del esquema. Nombre de la tabla padre (referenciada o destino) CONSTRAINT dep_pk PRIMARY KEY (num) Nombre de columna Lic. Vladimir Cotaquispe Gutiérrez. 13 E.P. DE INGENIERIA DE SISTEMA E INFORMATICA Lic. Vladimir Cotaquispe Gutiérrez. 14 E.P. DE INGENIERIA DE SISTEMA E INFORMATICA

8 Ejemplo a nivel de columna: dep Ejemplo a nivel de tabla: dep NUMBER(4) CONSTRAINT emp_dep_fk REFERENCES Departamentos (num), NUMBER(4) - ON DELETE SET NULL: pone las claves ajenas de las filas dependientes de la tabla origen a nulos. - La opción por defecto, que se activa si no se incluye ON DELETE es no permitir la acción de eliminar la fila de la tabla padre (equivale a un ON DELETE NO ACTION). No existe la cláusula ON UPDATE (modos de modificación). 5. Restricción CHECK Define una condición que deben cumplir todas las filas de la tabla. La condición es igual que las condiciones de la cláusula WHERE del SELECT salvo porque no puede incluir: - Referencias a pseudocolumnas (CURRVAL, NEXTVAL, LEVEL, ROWNUM). - Llamadas a las funciones SYSDATE, UID, USER y USERENV. - Consultas que refieren a otros valores en otras filas. CONSTRAINT emp_dep_fk FOREIGN KEY (dep) REFERENCES Departamentos (num) A nivel de columna no aparecen las palabras clave FOREIGN KEY. A nivel de tabla indican - Subconsultas (subqueries). Una columna puede tener asociadas tantas restricciones CHECK como se desee. [CONSTRAINT ] CHECK (<condición>) las columnas de la tabla origen (child table) que forman la clave ajena. Detrás de la palabra clave REFERENCES se indican la tabla y columnas de destino. <condición> Una expresión que debe ser cierta para todas las filas de la tabla. A nivel Modos de Borrado Sólo existen tres modos de borrado, que indican lo que debe hacer ORACLE Server cuando se elimina una fila de la tabla padre: - ON DELETE CASCADE: borra las filas dependientes de la tabla origen. Lic. Vladimir Cotaquispe Gutiérrez. 15 E.P. DE INGENIERIA DE SISTEMA E INFORMATICA Ejemplo a nivel de columna: de columna sólo puede referir a dicha columna. A nivel de tabla puede referir a otras columnas, pero a los valores de la misma fila. Lic. Vladimir Cotaquispe Gutiérrez. 16 E.P. DE INGENIERIA DE SISTEMA E INFORMATICA

9 salario NUMBER(8, 2) CONSTRAINT CHECK (salario>0), <tipo> Tipo de la restricción Nombre de la columna Ejemplo a nivel de tabla: salario NUMBER(8,2), neto NUMBER(8,2), CONSTRAINT neto_max CHECK (neto<=salario*0 8) 6. Añadiendo Restricciones en Tablas Existentes Se emplea la sentencia ALTER TABLE para: - Añadir o eliminar una restricción, pero no se puede modificar su estructura o definición. - Activar (enable) o desactivar (disable) restricciones. - Añadir una restricción NOT NULL a una columna existente mediante la claúsula MODIFY. Añadir la restricción de clave ajena para el supervisor en la tabla de Empleados. ALTER TABLE Empleados ADD CONSTRAINT emp_supervisor_f k FOREIGN KEY (supervisor_id) REFERENCES Empleados(id 7. Eliminando Restricciones en Tablas Existentes Se pueden consultar las vistas (views) USER_CONSTRAINTS y USER_CONS_COLUMNS del diccionario de datos para identificar el nombre de la restricciones y las columnas que tienen asociadas. Emplear la claúsula DROP de la sentencia ALTER TABLE para eliminar la restricción. La opción CASCADE hace que se eliminen todas las restricciones dependientes de la elegida. ALTER TABLE DROP { PRIMARY KEY UNIQUE () CONSTRAINT ALTER TABLE ADD [CONSTRAINT ] <tipo de restricción> ( Nombre de la tabla [CASCADE]; Nombre de la tabla Nombre de la columna afectada por la restricción Lic. Vladimir Cotaquispe Gutiérrez. 17 E.P. DE INGENIERIA DE SISTEMA E INFORMATICA Lic. Vladimir Cotaquispe Gutiérrez. 18 E.P. DE INGENIERIA DE SISTEMA E INFORMATICA

10 DISABLE CONSTRAINT emp_pk CASCADE; Ejemplos: 9. Activando Restricciones Eliminar la restricción de clave ajena para el supervisor en la tabla de Empleados. ALTER TABLE Empleados DROP CONSTRAINT emp_supervisor_fk; Eliminar la restricción de clave primaria de la tabla Departamentos y la clave ajena asociada de empleados (Empleados.id-> Departamentos). ALTER TABLE Departamentos DROP PRIMARY KEY CASCADE; 8. Desactivando Restricciones Se puede desactivar la comprobación de una restricción, aunque siga estando en el esquema, mediante la opción DISABLE de la sentencia ALTER TABLE. Se puede activar la comprobación de una restricción mediante la opción ENABLE de la sentencia ALTER TABLE. En el momento de la activación, todos los datos de la tabla deben satisfacer la restricción. En el caso de restricciones UNIQUE o PRIMARY KEY, se crea automáticamente un índice asociado. También se puede incluir ENABLE durante la creación de la tabla (CREATE TABLE). ALTER TABLE ENABLE CONSTRAINT ; También se puede incluir DISABLE durante la creación de la tabla (CREATE TABLE) para que desde el principio esté desactivada. Nombre de la tabla Desactivar una restricción UNIQUE o PRIMARY KEY supone remover el índice asociado. ALTER TABLE DISABLE CONSTRAINT [CASCADE]; Volver a activar la restricción de clave primaria de la tabla de Empleados. ALTER TABLE Empleados ENABLE CONSTRAINT emp_pk; Nombre de la tabla 10.Restricciones en Cascada Un fenómeno que requiere especial atención es la eliminación de columnas de una tabla que son la base de restricciones que dependen unas de otras en cascada. Desactivar la restricción de clave primaria de la tabla de Empleados. ALTER TABLE Empleados Lic. Vladimir Cotaquispe Gutiérrez. 19 E.P. DE INGENIERIA DE SISTEMA E INFORMATICA Para controlar este problema existe la cláusula CASCADE CONSTRAINTS, que se emplea junto con DROP COLUMN. Esta cláusula supone: - Eliminar todas las restricciones de integridad referencial que refieren (apuntan) a Lic. Vladimir Cotaquispe Gutiérrez. 20 E.P. DE INGENIERIA DE SISTEMA E INFORMATICA

11 claves primarias o únicas (UNIQUE) definidas sobre las columnas borradas. - Eliminar las restricciones multicolumna (composite) definidas sobre las columnas borradas. CREATE TABLE prueba1 ( pk fk Al ejecutar col1 col2 NUMBER PRIMARY KEY, NUMBER, NUMBER, NUMBER, CONSTRAINT fk_cons FOREIGN KEY (fk) REFERENCES prueba1, CONSTRAINT ck1 CHECK (pk>0 AND col1>0), CONSTRAINT ck2 CHECK (col2>0) ALTER TABLE prueba1 DROP (pk se produce un error porque pk es clave de la tabla padre de la integridad referencial. Al ejecutar ALTER TABLE prueba1 DROP (col1 se produce un error porque col1 es empleada por la restricción multicolumna ck1. Los errores se evitan incluyendo CASCADE CONSTRAINTS: ALTER TABLE prueba1 DROP (pk) CASCADE CONSTRAINTS; ALTER TABLE prueba1 DROP (col1) CASCADE CONSTRAINTS; PRÁCTICA - RESTRICCIONES Diseñar la estructura del esquema de la base de datos ACADEM: DEPARTAMENTOS (codigo, nombre) AREAS (codigo, nombre, departamento) PROFESORES (codigo, apellido1, apellido2, nombre_pila, activo, categoria, dedicacion, area) ASIGNATURAS (siglas, nombre, creditos, curso, anualidad, clase, horas_teoria, horas_practica, grupos_teoria, grupos_practica, alumnos) LOCALES (codigo, nombre, docente, capacidad, edificio, situacion) GRUPOS (curso, clase, codigo, nombre) DOCENCIA (id, curso, clase, grupo, siglas, profesor, local, dia, hora, periodicidad) areas.departamento departamentos profesores.area areas docencia.curso, clase, grupo grupos docencia.profesor profesores docencia.local locales docencia.siglas asignaturas 1. Cambiar la definición de la restricción de clave primaria de la tabla Departamentos para asignarle el nombre dep_pk. 2. Añadir la regla de negocio de que los profesores sólo pueden tener una dedicación de tiempo completo (TC), o parcial de 6 horas (6 h) o de 3 horas (3 h). Comprobar que se ha modelado bien intentando modificar la dedicación del profesor con codigo=1 al valor 20 y observando el mensaje de error que se produce. 3. Comprobar cuales son las restricciones que están definidas en la tabla Locales. Una de ellas no es necesaria al ser redundante. Detectarla y eliminarla. Realizar alguna operación de tipo DML para demostrar que aunque dicha restricción se ha eliminado, en realidad se sigue cumpliendo gracias a otra restricción. 4. Desactivar la restricción NOT NULL en la columna nombre de la tabla Departamentos. Comprobar mediante alguna operación UPDATE que está desactivada. Volver a intentar activarla y averiguar qué efecto produce el cambio producido por la operación anterior. Resolver la situación de forma que la restricción queda activada. 5. Definir la regla de negocio de que una asignatura tiene una hora semanal de clase (de teoría y/o de práctica) por cada 3 créditos. Comprobar antes de añadirla al esquema, que dicha regla se cumple con los datos actuales. Lic. Vladimir Cotaquispe Gutiérrez. 21 E.P. DE INGENIERIA DE SISTEMA E INFORMATICA Lic. Vladimir Cotaquispe Gutiérrez. 22 E.P. DE INGENIERIA DE SISTEMA E INFORMATICA

Constraints (Restricciones) Copyright Oracle Corporation, 1998. All rights reserved.

Constraints (Restricciones) Copyright Oracle Corporation, 1998. All rights reserved. 11 Constraints (Restricciones) Copyright Oracle Corporation, 1998. All rights reserved. Objetivos Al completar esta lección, debería a ser capaz de hacer lo siguiente: Describir constraints Crear y mantener

Más detalles

Diseño físico de datos. Oracle

Diseño físico de datos. Oracle UNIDAD 6 Diseño físico de datos. Oracle 2011-2012 Índice 1. Oracle. Características 2. SQL-Developer 3. Diseño físico 3.1Tipos de datos 3.2 Creación de tablas. Restricciones. 3.3 Supresión de tablas. 3.4

Más detalles

MANUAL BÁSICO DE ORACLE

MANUAL BÁSICO DE ORACLE MANUAL BÁSICO DE ORACLE ESCUELA COLOMBIANA DE INGENIERÍA JULIO GARAVITO LABORATORIO DE INFORMÁTICA BOGOTÁ D. C. 2007-2 TABLA DE CONTENIDO INTRODUCCIÓN... 3 1. TIPOS DE DATOS... 4 1.1 TIPOS DE DATOS ALFANUMÉRICOS...

Más detalles

Oracle Express 10g. Marta Zorrilla Universidad de Cantabria

Oracle Express 10g. Marta Zorrilla Universidad de Cantabria Oracle Express 10g Marta Zorrilla Universidad de Cantabria Características With Oracle Database XE, you use an intuitive browser-based interface to: Administer the database Create tables, views, and other

Más detalles

Grupo Kybele, http://www.kybele.es/ Pág. 1

Grupo Kybele, http://www.kybele.es/ Pág. 1 Bases de Datos APUNTES PARA EL MANEJO DE SQL*Plus Para cualquier consulta a la sintaxis de las órdenes SQL o SQL*PLUS puede consultarse cualquier libro de ORACLE, o los manuales gratuitos en pdf o en línea

Más detalles

BASE DE DATOS - CURSO 02/03 PRÁCTICA 2: SQL: Lenguaje de definición de datos (DDL)

BASE DE DATOS - CURSO 02/03 PRÁCTICA 2: SQL: Lenguaje de definición de datos (DDL) OBJETIVOS: Enseñar al alumno las sentencias que forman el lenguaje de definición de datos de SQL, es decir, el subconjunto de órdenes que nos permitirán crear o editar esquemas de bases de datos. MATERIAL:

Más detalles

Unidad II: Lenguaje de definición de datos(ddl) 2.1 Creación del esquema de la base de datos

Unidad II: Lenguaje de definición de datos(ddl) 2.1 Creación del esquema de la base de datos Unidad II: Lenguaje de definición de datos(ddl) 2.1 Creación del esquema de la base de datos El esquema de una base de datos (en inglés, Database Schema) describe la estructura de una Base de datos, en

Más detalles

Permite definir cada relación que pertenece a la base de datos relacional, incluyendo:

Permite definir cada relación que pertenece a la base de datos relacional, incluyendo: TEMA 7.- EL ESTANDAR SQL. El Sublenguaje de Manipulación. El Sublenguaje de Definición. El Sublenguaje de Control. El Sublenguaje Huésped. 1. El Sublenguaje de Manipulación. (Se verá en la clase de problemas)

Más detalles

A.1. Definiciones de datos en SQL

A.1. Definiciones de datos en SQL A.1. Definiciones de datos en SQL Las Sentencias del lenguaje de definición de datos (DDL) que posee SQL operan en base a tablas. Las Principales sentencias DDL son las siguientes: CREATE TABLE DROP TABLE

Más detalles

Sistema Gestor de Bases de Datos Relacionales (SGBDR), que maneja distintos tipos de datos:

Sistema Gestor de Bases de Datos Relacionales (SGBDR), que maneja distintos tipos de datos: Bases de Datos Introducción a ORACLE Sistema Gestor de Bases de Datos Relacionales (SGBDR), que maneja distintos tipos de datos: o Tradicionales como INTEGER, VARCHAR2, DATE,..., etc. o Nuevos y complejos:

Más detalles

Estándar de desarrollo de aplicaciones del Govern de les Illes Balears

Estándar de desarrollo de aplicaciones del Govern de les Illes Balears Estándar de desarrollo de aplicaciones del Govern de les Illes Balears BASE DE DATOS Versión 5.0 Fecha Revisión: 28/05/09 Índice de contenidos INTRODUCCIÓN... 3 NOMENCLATURA DE BASE DE DATOS... 4 2.1.

Más detalles

SINTAXIS DE SQL-92. <definición de esquema >::= CREATE SCHEMA <cláusula de nombre de esquema> [ <elemento de esquema>... ]

SINTAXIS DE SQL-92. <definición de esquema >::= CREATE SCHEMA <cláusula de nombre de esquema> [ <elemento de esquema>... ] SINTAXIS DE SQL-92 Introducción: Se presenta brevemente un resumen de la sintaxis de SQL según el estándar ISO 9075 (SQL- 92), dividido en tres partes: - Lenguaje de Definición de Daots (LDD), - Lenguaje

Más detalles

Maestría en Bioinformática. Bases de Datos y Sistemas de Información SQL: DDL. Ing. Alfonso Vicente, PMP alfonso.vicente@logos.com.

Maestría en Bioinformática. Bases de Datos y Sistemas de Información SQL: DDL. Ing. Alfonso Vicente, PMP alfonso.vicente@logos.com. Maestría en Bioinformática Bases de Datos y Sistemas de Información SQL: DDL Ing. Alfonso Vicente, PMP alfonso.vicente@logos.com.uy Agenda SQL DDL Lenguaje SQL Sub-lenguajes Dialectos Agenda SQL DDL Esquemas

Más detalles

Creación y Gestión de Tablas. Copyright Oracle Corporation, 1998. All rights reserved.

Creación y Gestión de Tablas. Copyright Oracle Corporation, 1998. All rights reserved. 10 Creación y Gestión de Tablas Copyright Oracle Corporation, 1998. All rights reserved. Objetivos Al completar esta lección, debería a ser capaz de hacer lo siguiente: Describir los principales objetos

Más detalles

EL ENTORNO DE TRABAJO SQL ORACLE

EL ENTORNO DE TRABAJO SQL ORACLE PREVIO 2 EL ENTORNO DE TRABAJO SQL ORACLE Y LENGUAJE DE DEFINICIÓN DE DATOS DDL) INTRODUCCIÓN A ORACLE Oracle10g es de las últimas versiones de esté manejador de base de datos, incorpora la tecnología

Más detalles

Dependiendo de las tareas, podemos clasificar las sentencias SQL en dos tipos:

Dependiendo de las tareas, podemos clasificar las sentencias SQL en dos tipos: CONTENIDO. 1. INTRODUCCIÓN 2. TIPOS DE SENTENCIAS SQL 3. TIPOS DE DATOS 4. SQL PLUS 5. CONSULTAS DE DATOS 6. RESTRICCIÓN Y CLASIFICACIÓN DE LOS DATOS 7. FUNCIONES A NIVEL DE FILA 8. VISUALIZACIÓN DE DATOS

Más detalles

m047a Curso Programando una Base de Datos SQL Server 2008, 36 h Creación B.D. y Constraints

m047a Curso Programando una Base de Datos SQL Server 2008, 36 h Creación B.D. y Constraints Crear Una Base De Datos (L12) A TRAVÉS DE LA CONSOLA DE ADMINISTRACIÓN A TRAVÉS DEL ASISTENTE DE BASES DE DATOS (DATABASE WIZARD) A TRAVÉS DE COMANDOS SQL (CREATE DATABASE, CREATE TABLE) Crear Un Grupo

Más detalles

ÍNDICE. Introducción... Capítulo 1. Novedades de Access 2013... 1

ÍNDICE. Introducción... Capítulo 1. Novedades de Access 2013... 1 Introducción... XIII Capítulo 1. Novedades de Access 2013... 1 Nuevas posibilidades de cifrado, compactación y reparación de archivos... 1 Trabajo en la nube... 2 Compartir la información... 3 Guardar

Más detalles

TRANSACT-SQL, DISEÑO Y PROGRAMACIÓN DE BASES DE DATOS EN SQL SERVER 2008

TRANSACT-SQL, DISEÑO Y PROGRAMACIÓN DE BASES DE DATOS EN SQL SERVER 2008 TRANSACT-SQL, DISEÑO Y PROGRAMACIÓN DE BASES DE DATOS EN SQL SERVER 2008 ESTRUCTURA DEL SEMINARIO Modulo 1: Crear y administrar una base de datos SQL Server Métodos para crear una base de datos SQLServer.

Más detalles

Tema 3 Modelo relacional

Tema 3 Modelo relacional Contenido: Bases de Datos y Sistemas de Información Ing. Informática GRUPO A Tema 3 Modelo relacional 3.1 Terminología del modelo relacional 3.2 Paso del modelo ER al modelo relacional 3.3 Creación de

Más detalles

Diseño de bases de datos

Diseño de bases de datos Departamento de Lenguajes y Sistemas Informáticos E.T.S. Ingeniería Informática. Universidad de Sevilla Avda Reina Mercedes sn. 41012 Sevilla TlfFax 954 557 139 E-mail lsi@lsi.us.es Web www.lsi.us.es Diseño

Más detalles

Base de Datos Oracle 10g: Introducción a SQL Código: D17216 - Duración: 5 días (40 horas)

Base de Datos Oracle 10g: Introducción a SQL Código: D17216 - Duración: 5 días (40 horas) Base de Datos Oracle 10g: Introducción a SQL Código: D17216 - Duración: 5 días (40 horas) Lo que aprenderá Esta clase es aplicable para los usuarios de Oracle8i, Oracle9i y Oracle Database 10g. En este

Más detalles

Lenguaje SQL Página 1 -PARTE III-...3 TEMA 8. CREACIÓN DE VISTAS:...3. Vistas: qué son y para qué sirven?...3. Creación de vistas...

Lenguaje SQL Página 1 -PARTE III-...3 TEMA 8. CREACIÓN DE VISTAS:...3. Vistas: qué son y para qué sirven?...3. Creación de vistas... Lenguaje SQL Página 1 -PARTE III-...3 TEMA 8. CREACIÓN DE VISTAS:...3 Vistas: qué son y para qué sirven?...3 Creación de vistas...4 Tipos de vistas...7 Vistas con filtro de filas y de columnas...7 Agrupaciones...7

Más detalles

PRÁCTICA B2. Definición y modificación de datos en SQL

PRÁCTICA B2. Definición y modificación de datos en SQL 3º Ingeniero Técnico en Informática de Sistemas Facultad de Informática Asignatura: Fundamentos de Bases de Datos Curso: 2007/08 PRÁCTICA B2. Definición y modificación de datos en SQL Objetivos Construir

Más detalles

Lenguaje para descripción de datos

Lenguaje para descripción de datos Amparo López Gaona tación Fac. Ciencias, UNAM Mayo 2012 Definición de Datos El lenguaje para definición de datos permite especificar: Esquema de cada relación. El dominio de cada atributo. Restricciones

Más detalles

BASES DE DATOS. TEMA 7. SQL. EL LENGUAJE DE CONSULTA.

BASES DE DATOS. TEMA 7. SQL. EL LENGUAJE DE CONSULTA. BASES DE DATOS. TEMA 7. SQL. EL LENGUAJE DE CONSULTA. La creación y manipulación de tablas Tipos de datos en SQL Operadores y condiciones lógicas La sentencia CREATE TABLE Estructura general Uso simplificado

Más detalles

PROGRAMAS DE ESTUDIO FORMATO 7 INTRODUCCIÓN A SQL. Área de Formación Profesional

PROGRAMAS DE ESTUDIO FORMATO 7 INTRODUCCIÓN A SQL. Área de Formación Profesional PROGRAMAS DE ESTUDIO FORMATO 7 NOMBRE DE LA ASIGNATURA INTRODUCCIÓN A SQL CICLO, AREA O MODULO Área de Formación Profesional CLAVE DE LA ASIGNATURA IT222 OBJETIVOS GENERALES DE LA ASIGNATURA Al final del

Más detalles

MANUAL BÁSICO DEL LENGUAJE SQL

MANUAL BÁSICO DEL LENGUAJE SQL MANUAL BÁSICO DEL LENGUAJE SQL ESCUELA COLOMBIANA DE INGENIERÍA JULIO GARAVITO LABORATORIO DE INFORMÁTICA BOGOTÁ D. C. 2007-2 TABLA DE CONTENIDO INTRODUCCIÓN... 3 1. COMANDOS... 4 1.1 Comandos DLL... 4

Más detalles

CURSO DE SQL SERVER 2005

CURSO DE SQL SERVER 2005 CURSO DE SQL SERVER 2005 Una vez finalizado el curso, el alumno estará preparado para: Instalar y configurar SQL Server 2005. Comprender los conceptos más importantes del diseño de bases de datos. Crear

Más detalles

3 GESTIÓN DE TABLESPACES

3 GESTIÓN DE TABLESPACES 3 GESTIÓN DE TABLESPACES 3.1 Introducción. 3.2 Creación de tablespaces. 3.3 Modificación de tablespaces. 3.4 Borrado de tablespaces. 3.5 Índices, secuencias y clusters. 3.6 Enlaces de bases de datos. 3.7

Más detalles

PRÁCTICA III. DISPARADORES EN SQL (II)

PRÁCTICA III. DISPARADORES EN SQL (II) PRÁCTICA III. DISPARADORES EN SQL (II) MODELOS AVANZADOS DE BASES DE DATOS CURSO 2000/2001 Objetivo Conocer mejor los disparadores en SQL. Se verá uno de los principales inconvenientes que se presentan

Más detalles

Restricciones (constraints) FOREIGN KEY

Restricciones (constraints) FOREIGN KEY INSTITUTO DE EDUCACION TECNICA PROFESIONAL INTEP 1 Restricciones (constraints) FOREIGN KEY InnoDB también soporta restricciones de claves foráneas. La sintaxis para definir una restricción de clave foránea

Más detalles

Tema 2 Modelos de Base de Datos. Profesor Luis Gmo. Zúñiga Mendoza UMCA

Tema 2 Modelos de Base de Datos. Profesor Luis Gmo. Zúñiga Mendoza UMCA Tema 2 Modelos de Base de Datos Profesor Luis Gmo. Zúñiga Mendoza UMCA Introducción Como hemos visto la base de datos consiste en una colección de datos estructura, que finalmente permite ser accedida

Más detalles

Bases de Datos SQL 1 SQL. Jorge Pérez R. Universidad de Talca, II Semestre 2006

Bases de Datos SQL 1 SQL. Jorge Pérez R. Universidad de Talca, II Semestre 2006 Bases de Datos SQL 1 SQL Jorge Pérez R. Universidad de Talca, II Semestre 2006 Bases de Datos SQL 2 Structured Query Language Lenguaje de consulta para bases de datos comerciales. Originalmente llamado

Más detalles

Oracle Básico PL/SQL

Oracle Básico PL/SQL Oracle Básico PL/SQL Creación de un Esquema de Base de Datos El objetivo de este ejercicio es la ejecución de sentencia SQL de tipo DDL. Contenido Caso a Desarrollar...2 Modelo Lógico... 2 Modelo Físico...

Más detalles

Temario. Índices simples Árboles B Hashing

Temario. Índices simples Árboles B Hashing Temario Introducción y fundamentos Introducción a SQL Modelo Entidad / Relación Modelo relacional Diseño relacional: formas normales Consultas Cálculo relacional Álgebra relacional Implementación de bases

Más detalles

ÍNDICE. Introducción... Capítulo 1. Novedades, mejoras y requisitos para la instalación... 1

ÍNDICE. Introducción... Capítulo 1. Novedades, mejoras y requisitos para la instalación... 1 Introducción... XIII Capítulo 1. Novedades, mejoras y requisitos para la instalación... 1 Novedades y mejoras en SQL Server 2008 R2... 1 Novedades... 1 Mejoras... 3 Ediciones y componentes en SQL Server

Más detalles

Es un lenguaje de consulta estructurado establecido claramente como lenguaje de alto nivel estándar para sistemas de base de datos relacionales.

Es un lenguaje de consulta estructurado establecido claramente como lenguaje de alto nivel estándar para sistemas de base de datos relacionales. SQL (Lenguaje de Consulta Estructurado): Es un lenguaje de consulta estructurado establecido claramente como lenguaje de alto nivel estándar para sistemas de base de datos relacionales. ANSI (Instituto

Más detalles

SQL SQL. Índice. Componentes. Objetivos

SQL SQL. Índice. Componentes. Objetivos Estándar En 1986, ANSI (American National Standard Institute) definión un estándar para (Structured Query Language) que fue posteriormente adoptado en 1987 como estándar internacional por ISO (International

Más detalles

Tema 33. El lenguaje SQL

Tema 33. El lenguaje SQL Tema 33. El lenguaje SQL Introducción... 1 Modos de uso... 2 Ejecución de las sentencias SQL... 2 Instrucciones DDL Data Definition Language-... 3 Instrucciones DML Data Manipulation Language-... 4 Instrucciones

Más detalles

FIREBIRD: LENGUAJE DE DEFINICIÓN DE DATOS

FIREBIRD: LENGUAJE DE DEFINICIÓN DE DATOS FIREBIRD: LENGUAJE DE DEFINICIÓN DE DATOS FIREBIRD: LENGUAJE DE DEFINICIÓN DE DATOS 1.- INTRODUCCIÓN...1 2.- BASE DE DATOS (DATABASE)...2 3.- DOMINIOS (DOMAIN)...4 4.- TABLAS (TABLE)...6 5.- INDICES (INDEX)...15

Más detalles

Se considera a Oracle como uno de los sistemas de bases de datos más completos, destacando su:

Se considera a Oracle como uno de los sistemas de bases de datos más completos, destacando su: CURSO DE ORACLE DESCRIPCIÓN Oracle es un sistema de gestión de base de datos relacional (o RDBMS por el acrónimo en inglés de Relational Data Base Management System), desarrollado por Oracle Corporation.

Más detalles

LENGUAJE SQL. Bárbula, Febrero de 2007. Historia y Definición

LENGUAJE SQL. Bárbula, Febrero de 2007. Historia y Definición LENGUAJE Integrantes: Ceci Vanessa Paredes Oswaldo Rodríguez Aury Bárbula, Febrero de 2007 : Es una herramienta para organizar, gestionar y recuperar datos almacenados en una base de datos. funciona con

Más detalles

Para ver una copia completa de la licencia, acudir a la dirección http://creativecommons.org/licenses/by-nc-sa/2.5/es/legalcode.

Para ver una copia completa de la licencia, acudir a la dirección http://creativecommons.org/licenses/by-nc-sa/2.5/es/legalcode. Para ver una copia completa de la licencia, acudir a la dirección http://creativecommons.org/licenses/by-nc-sa/2.5/es/legalcode.es (3) (1) Lenguaje SQL (I) DDL y DML esquema de la unidad (3.1) notas previas

Más detalles

- Bases de Datos - - Diseño Físico - Luis D. García

- Bases de Datos - - Diseño Físico - Luis D. García - Diseño Físico - Luis D. García Abril de 2006 Introducción El diseño de una base de datos está compuesto por tres etapas, el Diseño Conceptual, en el cual se descubren la semántica de los datos, definiendo

Más detalles

Si queremos modificar la contraseña de sys, una vez que accedamos al sistema como sys, escribiremos la sentencia:

Si queremos modificar la contraseña de sys, una vez que accedamos al sistema como sys, escribiremos la sentencia: TRABAJANDO CON SQL*PLUS El objetivo de este tema es simplemente, hacer una revisión de los conceptos avanzados de SQL, para ello, empezaremos por ver como se accede a SQL*PLUS y como crear usuarios, para

Más detalles

3. El catálogo 26. Laboratorio de Bases de Datos

3. El catálogo 26. Laboratorio de Bases de Datos ÍNDICE Continuación SQL Índice 1. Continuación del SQL como DML (Lenguaje de Manipulación de Datos) 1 1.1. Inserción de datos................................. 1 1.2. Borrado de datos..................................

Más detalles

: COMPUTACIÓN E INFORMATICA : Ingeniería de Software Ingeniería de Redes y Comunicaciones : Administración de Bases de Datos I : T-INF127

: COMPUTACIÓN E INFORMATICA : Ingeniería de Software Ingeniería de Redes y Comunicaciones : Administración de Bases de Datos I : T-INF127 I. DATOS INFORMATIVOS Carrera Especialidad Curso Código Ciclo : Tercero Requisitos Duración Horas Semana : 06 horas Versión : v.0110 II. SUMILLA : COMPUTACIÓN E INFORMATICA : Ingeniería de Software Ingeniería

Más detalles

Introducción a las bases de datos.

Introducción a las bases de datos. Introducción a las BBDD 1 Centro de Referencia Linux UAM-IBM Introducción a las bases de datos. Carmen B. Navarrete Navarrete carmen_navarrete@telefonica.net Introducción a las BBDD 2 Qué vamos a ver?

Más detalles

UNIVERSIDAD NACIONAL DE SAN AGUSTÍN FACULTAD DE PRODUCCIÓN Y SERVICIOS ESCUELA PROFESIONAL DE INGENIERÍA DE SISTEMAS LABORATORIO DE BASES DE DATOS 1

UNIVERSIDAD NACIONAL DE SAN AGUSTÍN FACULTAD DE PRODUCCIÓN Y SERVICIOS ESCUELA PROFESIONAL DE INGENIERÍA DE SISTEMAS LABORATORIO DE BASES DE DATOS 1 UNIVERSIDAD NACIONAL DE SAN AGUSTÍN FACULTAD DE PRODUCCIÓN Y SERVICIOS ESCUELA PROFESIONAL DE INGENIERÍA DE SISTEM LABORATORIO DE BES DE DATOS 1 Prof. Marco Aedo Práctica de Laboratorio Nº 6 I. OBJETIVOS

Más detalles

2.6.2.- Aplicaciones de las vistas. 2.6.1.- Concepto de vista. 2.6.3.- Vistas en SQL. 2.6.3.- Vistas en SQL.

2.6.2.- Aplicaciones de las vistas. 2.6.1.- Concepto de vista. 2.6.3.- Vistas en SQL. 2.6.3.- Vistas en SQL. 2.6.1.- Concepto de vista. Una vista es una tabla derivada de otras tablas (básicas o virtuales). Una vista se caracteriza porque: Se considera que forma parte del esquema externo. Una vista es una tabla

Más detalles

Base de Datos Práctica 1.

Base de Datos Práctica 1. Base de Datos Práctica 1. Objetivo: Introducción al Mysql, aprender a identificar los errores más comunes en la creación de las bases de datos para su solución, conocer los diferentes tipos de datos y

Más detalles

Integridad y Seguridad. Integridad y Seguridad. Restricción de Dominio. Protección. Índice. create domain. Dominios

Integridad y Seguridad. Integridad y Seguridad. Restricción de Dominio. Protección. Índice. create domain. Dominios Protección Integridad y Seguridad Las Restricciones de Integridad aseguran que las modificaciones realizadas por usuarios autorizados no provocan perdidas de Consistencia Semántica El Control de Acceso

Más detalles

Integridad en sistemas de bases de datos relacionales

Integridad en sistemas de bases de datos relacionales Integridad en sistemas de bases de datos relacionales Competencias específicas a adquirir Asegurar la integridad de los datos mediante la aplicación de los mecanismos soportados por los SGBDs. Identificar

Más detalles

Bases de Datos Relacionales

Bases de Datos Relacionales 2da. Parte Bases de Datos Relacionales Objetivos de la Clase SQL. Tipos de sentencias SQL Describir los tipos de dato que se pueden utilizar al especificar la definición de columnas. Sentencias SQL Select.

Más detalles

PRÁCTICA DE ADMINISTRACIÓN DE BASES DE DATOS

PRÁCTICA DE ADMINISTRACIÓN DE BASES DE DATOS PRÁCTICA DE ADMINISTRACIÓN DE BASES DE DATOS Modulo 1.- CONFIDENCIALIDAD DE LOS DATOS El objetivo de esta parte de la práctica es comprender los distintos mecanismos que se pueden utilizar en ORACLE 10g

Más detalles

PL/SQL. Con PL/SQL vamos a poder programar las unidades de programa de la base de datos Oracle:

PL/SQL. Con PL/SQL vamos a poder programar las unidades de programa de la base de datos Oracle: PL/SQL (Procedural Language/Structured Query Language) PL/SQL es el lenguaje de programación que proporciona Oracle para extender el SQL estándar con otro tipo de instrucciones y elementos propios de los

Más detalles

Restricciones de Integridad

Restricciones de Integridad Restricciones de Integridad Amparo López Gaona México, D.F. Semestre 2000-I Restricciones de Integridad Las principales restricciones de integridad que pueden indicarse son: La clave primaria. Claves candidatas.

Más detalles

El Manejador de Bases de Datos Relacionales ORACLE

El Manejador de Bases de Datos Relacionales ORACLE El Manejador de Bases de Datos Relacionales ORACLE Como la segunda empresa vendedora de software a nivel mundial, ORACLE provee una plataforma completa para desarrollar aplicaciones que utilicen el recurso

Más detalles

Instituto Profesional DuocUC Escuela de Ingeniería Administrando Esquemas

Instituto Profesional DuocUC Escuela de Ingeniería Administrando Esquemas Administrando Esquemas Jaime Amigo P. 2006, Santiago - Chile Objetivos Después de completar esta lección, usted deberá saber: Crear y modificar tablas Definir constraints Ver los atributos de una tabla

Más detalles

LENGUAJE DE CONSULTA ESTRUCTURADO - SQL CONTENIDO

LENGUAJE DE CONSULTA ESTRUCTURADO - SQL CONTENIDO LENGUAJE DE CONSULTA ESTRUCTURADO - SQL 1. TIPOS DE DATOS 2. COMANDOS DDL 2.1 Créate 2.2 Drop 2.3 Alter 3. COMANDOS DML 3.1 Select 3.2 Insert 3.3 Update 3.4 Delete 4. CLAUSULAS 4.1 From 4.2 Where 4.3 Having

Más detalles

Base de Datos LSI y PI Lic. Paola Daniela Budán Lic. Federico Rosenzvaig

Base de Datos LSI y PI Lic. Paola Daniela Budán Lic. Federico Rosenzvaig Base de Datos LSI y PI Lic. Paola Daniela Budán Lic. Federico Rosenzvaig Motores de Bases de Datos MySQL (Oracle) SQL Server (Microsoft) PostgreSQL Oracle (Oracle) DB2 (IBM) Informix (IBM) Instalación

Más detalles

Tema 1. Bases de datos activas

Tema 1. Bases de datos activas Tema 1. Bases de datos activas Diseño de Sistemas de Bases de Datos Merche Marqués 18 de marzo de 2002 Índice 1. Introducción 1 2. El modelo evento condición acción 1 2.1. Definición y uso de disparadores

Más detalles

El Lenguaje SQL TEMA V. Grupo de Bas ses de Datos Avanzadas Univ. Carlo os III de Madrid. V.1 SQL como Lenguaje de Definición de Datos

El Lenguaje SQL TEMA V. Grupo de Bas ses de Datos Avanzadas Univ. Carlo os III de Madrid. V.1 SQL como Lenguaje de Definición de Datos Grupo de Bases de Datos Avanzadas Univ. Carlos III de Madrid Índice V.1 Introducción V.1 SQL como Lenguaje de V.1.1 Definición del esquema V.1.2 Evolución del esquema V.2 SQL como Lenguaje de Manipulación

Más detalles

INGENIERIA EN SISTEMAS COMPUTACIONALES TALLER DE BASE DE DATOS SENTENCIA CREATE ERIC ADRIAN CONTRERAS ARJONA ISMA 5

INGENIERIA EN SISTEMAS COMPUTACIONALES TALLER DE BASE DE DATOS SENTENCIA CREATE ERIC ADRIAN CONTRERAS ARJONA ISMA 5 INGENIERIA EN SISTEMAS COMPUTACIONALES TALLER DE BASE DE DATOS SENTENCIA CREATE ERIC ADRIAN CONTRERAS ARJONA ISMA 5 5- SEPTIEMBRE-2010 DEFINICION La sentencia CREATE TABLE sirve para crear la estructura

Más detalles

T12 Vistas y tablas temporales

T12 Vistas y tablas temporales 1 de 9 17/05/2013 14:01 Lecciones SQL > T12 Vistas y tablas temporales En esta sesión vamos a mostrar dos tipos de objetos de uso habitual en cualquier SGBD: las vistas y las tablas temporales. Mientras

Más detalles

Una vez creada la BD podemos pedirle a MySQL que nos muestre todas las BD existentes. Para eso utilizamos la siguiente instrucción:

Una vez creada la BD podemos pedirle a MySQL que nos muestre todas las BD existentes. Para eso utilizamos la siguiente instrucción: Guía de MySQL Contenidos: 1.- Introducción: 2.- Creación de una base de datos. CREATE DATABASE. 3.- Creación de una tabla y mostrar sus campos (CREATE TABLE - SHOW TABLES - describe - DROP TABLE) 4.- Instrucción

Más detalles

5 Objetos de base de datos

5 Objetos de base de datos 5 Objetos de base de datos Una consulta SQL, restringiendo las filas resultantes, agrupando valores a nivel de grupos de datos, realizando conversiones de datos, etc., puede ser almacenada en la base de

Más detalles

Base de datos I Facultad de Ingeniería. Escuela de computación.

Base de datos I Facultad de Ingeniería. Escuela de computación. Base de datos I Facultad de Ingeniería. Escuela de computación. 1 2 Base de datos I, Guía 2 Introducción Este manual ha sido elaborado para orientar al estudiante de Bases de datos I en el desarrollo de

Más detalles

COMANDOS DE SQL, OPERADORES, CLAUSULAS Y CONSULTAS SIMPLES DE SELECCIÓN

COMANDOS DE SQL, OPERADORES, CLAUSULAS Y CONSULTAS SIMPLES DE SELECCIÓN COMANDOS DE SQL, OPERADORES, CLAUSULAS Y CONSULTAS SIMPLES DE SELECCIÓN Tipos de datos SQL admite una variada gama de tipos de datos para el tratamiento de la información contenida en las tablas, los tipos

Más detalles

Unidad III: Lenguaje de manipulación de datos (DML) 3.1 Inserción, eliminación y modificación de registros

Unidad III: Lenguaje de manipulación de datos (DML) 3.1 Inserción, eliminación y modificación de registros Unidad III: Lenguaje de manipulación de datos (DML) 3.1 Inserción, eliminación y modificación de registros La sentencia INSERT permite agregar nuevas filas de datos a las tablas existentes. Está sentencia

Más detalles

Tema 4. SQL. Juan Ignacio Rodríguez de León

Tema 4. SQL. Juan Ignacio Rodríguez de León Tema 4. SQL Juan Ignacio Rodríguez de León Resumen Este tema se centra exclusivamente en el estudio del lenguaje de consultas SQL (Structured Query Language). SQL usa una combinación de álgebra relacional

Más detalles

2. ESTUDIO DE INDICES

2. ESTUDIO DE INDICES Asignatura de Administración de Bases de Datos Curso 2011/2012 Pág. 1 PRÁCTICA DE ADMINISTRACIÓN DE BASES DE DATOS Una compañía de salud gestiona datos relativos a las consultas médicas a pacientes por

Más detalles

Acceso a bases de datos MySQL con PHP

Acceso a bases de datos MySQL con PHP GESTIÓN Y ADMINISTRACIÓN WEB Acceso a bases de datos MySQL con PHP Ing. CIP Fabián Silva Alvarado fsilvasys@hotmail.com DEFINICIÓN DE BASE DE DATOS Base de Datos es un conjunto de datos relacionados entre

Más detalles

Tema 1. Introducción

Tema 1. Introducción Tema 1. Introducción Ficheros y Bases de Datos 17 de abril de 2002 1. Introducción Este documento contiene preguntas del tema 1 recogidas por estudiantes de la asignatura (Elisa Ortíz López, Laura Pedregosa

Más detalles

MANUALITO MS-SQL SERVER

MANUALITO MS-SQL SERVER MANUALITO MS-SQL SERVER Contenido 1. Crear Store Procedures en MS SQL Server... 1 2. Crear Triggers en MS SQL Server... 5 3. Crear Vistas en MS SQL Server... 9 1. Crear Store Procedures en MS SQL Server

Más detalles

SERVICIO NACIONAL DE APRENDIZAJE SENA

SERVICIO NACIONAL DE APRENDIZAJE SENA SERVICIO NACIONAL DE APRENDIZAJE SENA GUÍA DE APRENDIZAJE SISTEMA INTEGRADO DE GESTIÓN Proceso Gestión de la Formación Profesional Integral Procedimiento Ejecución de la Formación Profesional Integral

Más detalles

PRACTICA DE ADMINISTRACION DE BASES DE DATOS

PRACTICA DE ADMINISTRACION DE BASES DE DATOS Depto. De Organización y Estructura de la Información Curso 2003/2004 Pág. 1 PRACTICA DE ADMINISTRACION DE BASES DE DATOS Una entidad bancaria gestiona datos relativos a operaciones bancarias de sus clientes

Más detalles

Crear BD en. Isis Bonet Cruz, PhD

Crear BD en. Isis Bonet Cruz, PhD Crear BD en Isis Bonet Cruz, PhD SQL Server Microsoft SQL Server es un sistema de administración y análisis de bases de datos relacionales de Microsoft para soluciones de comercio electrónico, línea de

Más detalles

EXAMEN TEMAS 3, 4 y 5. CREACIÓN Y EXPLOTACIÓN DE UNA BASE DE DATOS

EXAMEN TEMAS 3, 4 y 5. CREACIÓN Y EXPLOTACIÓN DE UNA BASE DE DATOS Nombre y apellidos: EXAMEN TEMAS 3, 4 y 5. CREACIÓN Y EXPLOTACIÓN DE UNA BASE DE DATOS 1. Crear la base de datos tiendas y, en ella, crear las tablas que se indican a continuación. Utilizar para todas

Más detalles

UNIVERSIDAD REGIONAL AUTÓNOMA DE LOS ANDES

UNIVERSIDAD REGIONAL AUTÓNOMA DE LOS ANDES UNIVERSIDAD REGIONAL AUTÓNOMA DE LOS ANDES UNIANDES Facultad de Sistemas Mercantiles Carrera de Sistemas de Informática Tema: ORACLE 9i. Autor: Muñoz Vivero Álvaro Andrés Ibarra 2010 Introducción La arquitectura

Más detalles

2.5.- El lenguaje estándar SQL

2.5.- El lenguaje estándar SQL 25- El lenguaje estándar SQL El SQL es un lenguaje estándar de definición y manipulación (y consulta) de bases de datos relacionales El SQL estándar incluye: Características del Álgebra Relacional Características

Más detalles

Objetos de la Base de Datos

Objetos de la Base de Datos Objetos de la Base de Datos Todos los datos de una base de datos de Microsoft SQL Server 2005/8 están contenidos en objetos llamados tablas. Cada tabla representa algún tipo de objeto con significado para

Más detalles

Descripción de la BBDD para las prácticas

Descripción de la BBDD para las prácticas Descripción de la BBDD para las prácticas Ficheros y Bases de Datos Enunciado general Restaurante en casa S.A. es una compañía que distribuye pedidos de comida desde restaurantes a casas particulares y

Más detalles

Sub consultas avanzadas

Sub consultas avanzadas Sub consultas avanzadas Objetivo Después de completar este capítulo conocerá lo siguiente: Escribir una consulta de múltiples columnas Describir y explicar el comportamiento de las sub consultas cuando

Más detalles

SQL. Orígenes y Evolución

SQL. Orígenes y Evolución SQL 1 SQL. Orígenes y Evolución 2 SQL: Estándar oficial 3 Funciones de SQL DDL Data Definition Language Creación n de estructuras de la base de datos Integridad de los datos DML Data Manipulation Language

Más detalles

Curso de MySQL y Java

Curso de MySQL y Java Curso de MySQL y Java Introducción: instalación, arranque y primeros pasos 1. Material En este curso vamos a trabajar con el servidor mysql versión 4.0.18. También utilizaremos una herramienta llamada

Más detalles

8 SQL SERVER 2008 RA-MA

8 SQL SERVER 2008 RA-MA ÍNDICE Capítulo 1. Características, novedades y entorno de trabajo... 17 1.1 Novedades en SQL Server 2008... 17 1.2 Instalación de Microsoft SQL Server 2008... 19 1.3 Versiones de Microsoft SQL Server

Más detalles

MANUAL BÁSICO DE MySQL

MANUAL BÁSICO DE MySQL MANUAL BÁSICO DE MySQL Es el sistema de gestión de bases de datos Open Source más popular del mundo. Este manual es muy básico para ampliar consultar web del punto 12.Referencias 1. Instalar MySQL en Linux

Más detalles

PRÁCTICA I. INTRODUCCIÓN A Oracle8

PRÁCTICA I. INTRODUCCIÓN A Oracle8 PRÁCTICA I. INTRODUCCIÓN A Oracle8 Modelos Avanzados de Bases de Datos Curso 2000/2001 Creación de usuario CREATE USER nombre IDENTIFIED BY password; Crea un esquema lógico dónde poder guardar tablas ya

Más detalles

PROGRAMANDO BASES DE DATOS PostgreSQL INTRODUCCIÓN INTRODUCCIÓN A LAS BASES DE DATOS (L1)

PROGRAMANDO BASES DE DATOS PostgreSQL INTRODUCCIÓN INTRODUCCIÓN A LAS BASES DE DATOS (L1) A LAS BASES DE DATOS (L1) VENTAJAS TECNOLOGÍA BASE DE DATOS DISPONIBILIDAD Y VISIBILIDAD ALMACENAMIENTO CONSULTAS INFORMACIÓN RESPALDOS Y RESTAURACIÓN CONCEPTOS DE INTEGRIDAD DE LOS DATOS ELIMINACIÓN REDUNDANCIA

Más detalles

Implementación de la integridad de datos

Implementación de la integridad de datos Implementación de la integridad de datos Contenido Introducción 1 Tipos de integridad de datos 2 Exigir integridad de los datos 3 Definición de restricciones 4 Tipos de restricciones 9 Deshabilitación

Más detalles

UNIVERSIDAD AUTONOMA DE LOS ANDES UNIANDES LENGUAJE SQL. SQL es un estándar un lenguaje estructurado para consultas

UNIVERSIDAD AUTONOMA DE LOS ANDES UNIANDES LENGUAJE SQL. SQL es un estándar un lenguaje estructurado para consultas LENGUAJE SQL Que es SQL? SQL es un estándar un lenguaje estructurado para consultas SQL te permite acceder y manejar bases de datos SQL es un Estándar (ANSI American National Standards Institute) Que puede

Más detalles

8 MICROSOFT SQL SERVER 2008 R2. CURSO PRÁCTICO RA-MA

8 MICROSOFT SQL SERVER 2008 R2. CURSO PRÁCTICO RA-MA ÍNDICE CAPÍTULO 1. CARACTERÍSTICAS, NOVEDADES Y ENTORNO DE TRABAJO...17 1.1 NOVEDADES EN SQL SERVER 2008 R2...17 1.2 INSTALACIÓN DE MICROSOFT SQL SERVER 2008 R2...18 1.3 VERSIONES DE MICROSOFT SQL SERVER

Más detalles

Administración y programación de Bases de Datos con SQL Server 2005

Administración y programación de Bases de Datos con SQL Server 2005 Administración y programación de Bases de Datos con SQL Server 2005 Este curso trata las diferentes tareas necesarias para llevar a cabo el despliegue, diseño, implementación y mantenimiento de bases de

Más detalles

6. Integridad en Sistemas de Bases de Datos Relacionales

6. Integridad en Sistemas de Bases de Datos Relacionales 6. Integridad en Sistemas de Bases de Datos Relacionales Objetivos Apreciar la necesidad de garantizar la integridad o corrección de la información almacenada en una base de datos Distinguir e identificar

Más detalles

El usuario puede utilizar esta tabla derivada como una tabla más, en sus consultas.

El usuario puede utilizar esta tabla derivada como una tabla más, en sus consultas. Vistas. El resultado de una consulta en el caso de SQL siempre es una tabla, ésta se puede hacer permanente dentro de la base de datos. En este caso se dice que esta tabla resultado es una vista o una

Más detalles

Haga clic para PostgreS cambiar el estilo

Haga clic para PostgreS cambiar el estilo Taller # 1 Uso y Manejo l Sistema Gestor Bases Datos PostgreSQL Luis García Computación ldgarc@gmail.com Contenido - Creación Tablas (Create Table...) ( Check Foreign Keys ) - Inserción Datos (Insert Into...)

Más detalles

Consultas con combinaciones

Consultas con combinaciones UNIDAD 1.- PARTE 2 MANIPULACIÓN AVANZADA DE DATOS CON SQL. BASES DE DATOS PARA APLICACIONES Xochitl Clemente Parra Armando Méndez Morales Consultas con combinaciones Usando combinaciones (joins), se pueden

Más detalles

Bases de datos: Sistemas de bases de datos:

Bases de datos: Sistemas de bases de datos: Bases de datos: Sistemas de bases de datos: Un sistema de bases de datos es básicamente un sistema para archivar en computador, es decir, es un sistema computarizado cuyo propósito general es mantener

Más detalles