SQL: DDL.

Slides:



Advertisements
Presentaciones similares
SQL Sigla del nombre “Structured Query Language”.
Advertisements

integridad referencial
Rocio Contreras Aguila Primer Semestre Para poder ejecutar esto SQL Server nos permite definir datos y nos entrega herramientas para poder exigir.
LENGUAJE ESTRUCTURADO DE CONSULTA “SQL”
BASE DE DATOS OBJETO RELACIONAL
Implementación de la integridad de datos
Fernando Velasco
Teórico: Modelo Relacional
Por: Ronald Toscano Pretelt
Unidad 3 Lenguaje de manipulación de datos(DML).
EL LENGUAJE ESTÁNDAR SQL
Características Objeto Relacionales en Oracle
Sistema de gestión de las bases de datos (SGBD).
Características Objeto Relacionales en Oracle
Características Objeto Relacionales en Oracle Francisco Moreno Universidad Nacional.
SESIÓN 2. Completados por el tipo de objeto sobre el que actúan y el objeto concreto: CREATE DATABASE mibase ; Permite crear una base de datos llamada.
MySQL M.C. Pedro Bello López.
Restricciones de Integridad en ORACLE
…Tablas DDL.
Lenguaje SQL (Structured Query Language)
SQL Lenguaje de consulta estructurado
Bases de Datos Relacionales
PL/SQL Francisco Moreno Universidad Nacional.
Subconsultas Avanzadas
Componentes sintácticos
Integridad Referencial 1. Integridad referencial 2.
UNITA - IBARRA TRIGGERS
John Freddy Duitama M.U.de.A. Facultad de Ingeniería. Creación del esquema de Una Base de Datos. John Freddy Duitama Muñoz. Facultad de Ingeniería. U.de.A.
CONCEPTOS BASICOS SQL SERVER SEBASTIAN MARTINEZ GARCIA.
CAPITULO 10 Manejando Restricciones
SQL: DDL Francisco Moreno & Carlos Mario Zapata. SQL:DDL DDL: Lenguaje de Definición de Datos Permite crear objetos en la Base de Datos Tipos de Objetos:
SQL (Structured Query Language / Lenguaje de consulta estructurado)‏
IBD CLASE 15. SQL Lenguaje de Consultas Estruturado (SQL) ◦Lenguaje de trabajo estándard para modelo relacional ◦Componentes ◦DDL: Data Definition Language.
ESCUELA TECNOLÓGICA INSTITUTO TÉCNICO CENTRAL Ing. Johanna Vargas Esp. Gerencia de proyectos.
Programación en Visual Basic Lección #8: SQL Por Antonio F. Huertas.
Vista Externa de Una Base de Datos John Freddy Duitama Muñoz. Facultad de Ingeniería. U.de.A. John Freddy Duitama Muñoz. Facultad de Ingeniería. U.de.A.
SQL: Lenguaje de Interrogación Estructurado. Vistas Declaración de vista CREATE VIEW ( ) AS SELECT... Semántica Tabla virtual cuyo contenido es el resultado.
Características Objeto-Relacionales en Oracle Francisco Moreno Universidad Nacional.
Data Manipulation Language (DML) Lenguaje de Manipulación de Datos
DDL Unidad 2. 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.
INSTRUCCIONES Elaboración de la Presentación:
Introducción a Bases de Datos en Microsoft Access Programación de Computadoras 2 Sección: P.
DISEÑO DE BASES DE DATOS
LENGUAJE SQL.
Structured Query Language (Lenguaje Estructurado de Consultas)
BASES DE DATOS MySQL.
John Freddy Duitama M.U.de.A. Facultad de Ingeniería. Creación del esquema de Una Base de Datos. John Freddy Duitama Muñoz. Facultad de Ingeniería. U.de.A.
SQL: DDL Francisco Moreno. SQL: DDL DDL: Lenguaje de Definición de Datos Permite crear objetos en la BD Tipos de objetos: - Tablas: corresponden a las.
Restricciones de Integridad
Expresiones algebraicas equivalentes
Creación y población de Base de datos. Creación de Base de datos Instrucciones. CREATE SCHEMA CREATE DATABASE nombre_base de datos.
SQL Sigla del nombre “Structured Query Language”.
Vista Externa de Una Base de Datos John Freddy Duitama Muñoz. Facultad de Ingeniería. U.de.A. John Freddy Duitama Muñoz. Facultad de Ingeniería. U.de.A.
Base de Datos I. SQL es el lenguaje estándar para trabaja con base de datos relacionales. MySQL, el sistema de gestión de bases de datos SQL Open Source.
Prof. De Bases de Datos: Lcdo. Luis Peña. El lenguaje más habitual para construir las consultas a bases de datos relacionales es SQL, Structured Query.
Base de datos Francisco Castro. Creación de una tabla drop table TABLA cascade constraints; /*==============================================================*/
Comandos de SQL Prog. Orientada a Eventos. Inserción de datos (INSERT) INSERT….VALUES INSERT INTO Tabla1 (Columna1, Columna2…) VALUES (‘ValorAlfa’, ValorNum…);
MSSQL SERVER CURSO BÁSICO 1. DESCRIPCIÓN DEL CURSO. Sesión 4: Sentencia Insert,Transacciones,Insert general, Insert Select * From, Sentencia Update,Update.
Comandos DDL Los comandos DDL son las siglas de Data Definition Language, y se corresponde con el conjunto de órdenes que permiten definir las estructuras.
(Lenguaje de consulta estructurado)
SQL Lenguaje Estructurado de Consultas. Structured Query Lenguaje (SQL). Lenguaje de acceso a bases de datos. Proyecto de Investigación de IBM. La mayoria.
Bases de Datos SQL.
Departamento de Lenguajes y Sistemas Informáticos escuela técnica superior de ingeniería informática Diseño de Bases de Datos Tema 4: Integridad.
Departamento de Lenguajes y Sistemas Informáticos escuela técnica superior de ingeniería informática Diseño de Bases de Datos Tema 4: Integridad.
Base de Datos SQL - Introductorio - DDL. DEFINICIÓN SQL Volver a los Objetivos.
Structure Query Languaje SQL. Introducción a SQL El lenguaje de consulta estructurado (SQL) es un lenguaje de base de datos normalizado, utilizado por.
ALTER TABLE MODIFICAR LA ESTRUCTURA DE LOS OBJETOS DE UNA BASE DE DATOS.
Querys a bases de datos con MS ACCESS. DEFINAMOS LOS TERMINOS: DML=Lenguaje de manipulación de datos Las sentencias DML permiten generar consultas para.
Crear una tabla (create table - sp_tables - sp_columns - drop table) Para ver las tablas existentes creadas por los usuarios en una base de datos usamos.
Copyright  Oracle Corporation, All rights reserved. 10 Constraints (Restricciones)
Transcripción de la presentación:

SQL: DDL

SQL:DDL DDL: Lenguaje de Definición de Datos Permite crear objetos en la Base de Datos Tipos de Objetos: - Tablas - Índices - Vistas - Otros

SQL:DDL Se pueden crear tablas con la instrucción CREATE TABLE nombre_tabla ( atributos: cada uno con su tipo de datos y restricciones ); Se pueden crear índices así: CREATE INDEX nombreindice ON tabla(columna(s)); Las vistas no son más que “consultas con nombres” Ejemplo: CREATE VIEW nombre_vista AS consulta;

Restricciones de Integridad Aseguran que los cambios realizados a una BD no provoquen inconsistencia en la información. Restricciones de dominio: Conjunto de valores y de operaciones permitidas sobre ellos. Dominios base en SQL: CHAR(p): Cadena de caracteres de longitud fija p (máxima longitud p) VARCHAR(p): Cadena de caracteres de longitud variable. Máxima longitud p. NUMBER(p,s): Valor numérico de precisión p y escala s. DATE: Fechas válidas. 1

Restricciones de Integridad Nulos: Un atributo puede o no admitir nulos. En SQL se especifica mediante la cláusula NOT NULL. Integridad Referencial: Garantiza la existencia de las Claves Foráneas. Para ello se utilizan las cláusulas REFERENCES y FOREIGN KEY Clave Primaria: Garantiza la unicidad y obligatoriedad del o los atributos definidos como clave primaria. Para ello se utiliza la cláusula PRIMARY KEY. 2

Restricciones de Integridad Clave Alternativa: Garantiza la unicidad de los atributos declarados como tal. Se utiliza la cláusula UNIQUE. Si se desea hacer obligatoria debe especificarse adicionalmente NOT NULL. Las reglas CHECK para atributos: Involucra condiciones de chequeo para uno o varios atributos. Sintaxis : CHECK ( condicion)

Sea el modelo: DEPARTAMENTO # código * nombre * ciudad el lugar de trabajo de adscrito a EMPLEADO #cédula * nombre * salario comisión * cargo el subordinado de el jefe de

CREATE TABLE departamento ( codigo NUMBER(6) PRIMARY KEY, nombre VARCHAR(6) NOT NULL UNIQUE, ciudad VARCHAR(12) CHECK (ciudad IN ('Medellín', 'Bogotá', 'Cali')) NOT NULL ); CREATE TABLE empleado ( cédula NUMBER(10) PRIMARY KEY, nombre VARCHAR(30) NOT NULL, jefe NUMBER(10) REFERENCES empleado, salario NUMBER(10,2) NOT NULL, comisión NUMBER(2) , cargo VARCHAR(20) NOT NULL, depto NUMBER(6) NOT NULL REFERENCES departamento El atributo ciudad sólo admitirá 1 de estas 3 ciudades. Es necesario además colocarle la restricción de no nulidad. Clave foránea sobre la misma tabla Clave foránea 3

Restricciones de Integridad Ejemplos con la cláusula CHECK: CREATE TABLE empleado ( cédula NUMBER(10) PRIMARY KEY, nombre VARCHAR(30) NOT NULL, jefe NUMBER(10) REFERENCES empleado(cédula), salario NUMBER(10,2) NOT NULL CHECK (salario > 0 ) , comision NUMBER(3) CHECK (comision between 0 and 100), cargo VARCHAR(20) NOT NULL, depto NUMBER(6) NOT NULL REFERENCES departamento ); Puede especificarse el atributo hacia el cual se refiere la clave foránea 3

Restricciones de Integridad Especificación de una clave primaria compuesta: CREATE TABLE envio ( snro NUMBER(6), pnro NUMBER(6), cantidad NUMBER(6) NOT NULL, PRIMARY KEY(snro,pnro) ); Nota: Es incorrecto colocar PRIMARY KEY al frente de snro y de pnro.

Restricciones de Integridad Clave foránea hacia una clave primaria compuesta: CREATE TABLE revision( codrevision NUMBER(5) PRIMARY KEY, cf_snro NUMBER(6) NOT NULL, cf_pnro NUMBER(6) NOT NULL, revisor VARCHAR(20)NOT NULL, FOREIGN KEY(cf_snro,cf_pnro) REFERENCES envio ); Cuando la clave primaria a la que se referencia es compuesta se debe utilizar esta sintaxis.

Restricciones de Integridad Se puede modificar la estructura de una tabla con la instrucción ALTER TABLE Ej: ALTER TABLE mitabla ADD nuevocampo NUMBER(3); Para destruir una tabla (estructura y datos) DROP TABLE nombre_tabla;

Ingresando valores … EJEMPLO: INSERT INTO t(c,a) VALUES(‘bye’,20); CREATE TABLE t ( a number(3) PRIMARY KEY, b date, c varchar(3)); INSERT INTO t VALUES(10, CURRENT_DATE, 'hi'); INSERT INTO t(c,a) VALUES(‘bye’,20); Se pueden especificar los campos a insertar… ¿Qué pasa con el atributo b en este caso?

Eliminando valores … Para eliminar filas de una tabla: DELETE FROM tabla [WHERE condicion]; Ej: DELETE FROM envio WHERE snro=34; La condición puede incluir subconsultas…

Actualizando valores … Para actualizar filas de una tabla: UPDATE tabla SET campo = nuevo_valor [WHERE condicion]; - Se pueden actualizar varios campos al mismo tiempo separándolos por comas - La condición y nuevo_valor pueden incluir subconsultas…

Actualizando valores … Ejemplo: UPDATE envio SET cantidad = cantidad - 5 WHERE snro = 10 AND pnro = 20;

Implementación de un Arco EMPLEADO # cédula * nombre * carné FACTURA # código * fecha AUTO # placa * marca

CREATE TABLE empleado( cedula NUMBER(8) PRIMARY KEY, nombre VARCHAR(25) NOT NULL, carnet NUMBER(5) UNIQUE NOT NULL); INSERT INTO empleado VALUES(10,'Dino',20); CREATE TABLE auto( placa VARCHAR(10) PRIMARY KEY, marca VARCHAR(20) NOT NULL); INSERT INTO auto VALUES('CTV 40','BMW'); Clave Alternativa

codigo NUMBER(6) PRIMARY KEY, fecha DATE NOT NULL, CREATE TABLE factura ( codigo NUMBER(6) PRIMARY KEY, fecha DATE NOT NULL, cedula NUMBER(8) REFERENCES empleado, placa VARCHAR(10) REFERENCES auto, CHECK ( (placa IS NULL AND cedula IS NOT NULL) OR (placa IS NOT NULL AND cedula IS NULL) ) ); Por medio del CHECK se implementa el arco ya que garantiza que si una CF es nula, la otra CF es no nula…

Note que las dos siguientes inserciones fallan: Genera la fecha actual (en Oracle) En SQL standard es CURRENT DATE INSERT INTO factura VALUES(300,SYSDATE,10,NULL); INSERT INTO factura VALUES(900,TO_DATE('28/12/04'),NULL,'CTV 40'); propia de Oracle, en el SQL estándar es CAST Note que las dos siguientes inserciones fallan: INSERT INTO factura VALUES(500,SYSDATE,10,'CTV 40'); INSERT INTO factura VALUES(600,SYSDATE,NULL,NULL);