SQL SQL. Índice. Componentes. Objetivos



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

EL ENTORNO DE TRABAJO SQL ORACLE

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

SQL (Structured Query Language)

Restricciones de Integridad

Bases de Datos 2. Teórico

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

Bases de Datos: Structured Query Language (SQL)

Bases de Datos Relacionales

Structured Query Language (SQL) Fundamentos de Bases de Datos InCo

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

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

Lenguaje para descripción de datos

LENGUAJE DE CONSULTA ESTRUCTURADO - SQL CONTENIDO

APÉNDICE SQL (Structures Query Language)

2.5.- El lenguaje estándar SQL

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

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

Tipos de datos en SQL. SQL. DDL (Data Definition Language) CREATE DOMAIN CREATE TABLE CREATE TABLE. CREATE TABLE con restricciones de atributo

A.1. Definiciones de datos en SQL

Acceso a bases de datos MySQL con PHP

Tema 33. El lenguaje SQL

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

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

SQL. Orígenes y Evolución

Iniciando con Oracle. Índice de contenido. Ingresando a Oracle. Cambiando Su Contraseña. Ingresando un Comando SQL en SQL*Plus

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

SQL Los fundamentos del lenguaje

Base de datos Lenguaje SQL

Introducción a las bases de datos.

MySQL y Sesiones en PHP. Área de Ingeniería Telemática

Modulo I: Introducción Gestores de Bases De Datos

A continuación se describen cuáles son los elementos principales de las tablas, cómo crear una y cómo modificarla.

ADMINISTRACIÓN DE BASE DE DATOS

Referencia SQL en la versión de HUGOSQL White Paper por: HUGOSQL 2012

ESCUELA DE CIENCIAS BASICAS TECNOLOGIA E INGENIERIA Programación de sitios web Act 11: Reconocimiento de la unidad 3

INSTITUCIÓN EDUCATIVA GABRIEL GARCIA MÁRQUEZ BASE DE DATOS. DESARROLLO DE SOFTWARE Página 1 de 28 SQL SQL

Consultas con combinaciones

Temario. Índices simples Árboles B Hashing

PARTE I LENGUAJE SQL. GESTION DE DATOS

Base de Datos Práctica 1.

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

Unidad. Lenguaje SQL. (Structured Query Language)

Trabajos de Ampliación. Bases de datos NoSQL.

Restricciones (constraints) FOREIGN KEY

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

Guía Taller I Conexión con la Base de Datos Introducción a PostgreSQL

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

Implementación de funciones definidas por el usuario

SQL (Structured Query Language)- DML

Haga clic para PostgreS cambiar el estilo

6. Integridad en Sistemas de Bases de Datos Relacionales

UNIVERSIDAD DEL ISTMO CAMPUS IXTEPEC LIC. INFORMATICA GRUPO 508 PROCEDIMIENTOS ALMACENADOS EN SQL SERVER 2000

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

Structured Query Language. Práctica

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

APUNTES: APLICACIONES WEB BASADAS EN PHP Y MYSQL Página 1 de 5

FICHEROS Y BASES DE DATOS (E44) 3º INGENIERÍA EN INFORMÁTICA. Tema 9. Reglas de Integridad

Oracle Básico PL/SQL

SERVICIO NACIONAL DE APRENDIZAJE SENA

Grupo Kybele, Pág. 1

MANUAL BÁSICO DEL LENGUAJE SQL

CONSULTAS CON SQL. 3. Hacer clic sobre el botón Nuevo de la ventana de la base de datos. Aparecerá el siguiente cuadro de diálogo.

Pequeños apuntes de SQL *

TEMA 20: CONCEPTOS BÁSICOS DE SQL

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

INTRODUCCIÓN INTRODUCCIÓN INTRODUCCIÓN INTRODUCCIÓN INSTRUCCIONES DE DEFINICIÓN DE TABLAS E ÍNDICES INSTRUCCIONES DE DEFINICIÓN DE TABLAS E ÍNDICES

T12 Vistas y tablas temporales

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

Tablas y Campos Nuevos

Aplicaciones de las vistas Concepto de vista Vistas en SQL Vistas en SQL.

FIREBIRD: LENGUAJE DE DEFINICIÓN DE DATOS

4- Uso de sentencias para el envió y extracción de datos

Introducción a SQL (DDL)

Integridad en sistemas de bases de datos relacionales

PRÁCTICA III. DISPARADORES EN SQL (II)

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

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

Bases de datos relacionales y el modelo entidad-relación

SQL Sintaxis. Ejemplo de Alumno, Curso, Profesor. Esquemas de Alumno, Curso, Profesor. Andrés Moreno S.

[CASI v.0110] Pág. 1

6 - Recuperar algunos registros (where)

Lenguaje SQL para Novatos

INTRODUCCIÓN AL SQL. TRANSACT-SQL SQL SERVER Manual de Referencia para usuarios. Salomón Ccance CCANCE WEBSITE

BASE DE DATOS QUÉ ES UNA BASE DE DATOS?

ADMINISTRACION DE BASES DE DATOS EN ORACLE

LENGUAJE SQL. En Mysql se utiliza un subconjunto de SQL (update, insert into, delete, select, truncate,etc).

Repaso de Conceptos Básicos de Bases de Datos

6- Combinación de tablas

2- Creación de tablas y manejos de datos.

CURSO DE SQL SERVER 2005

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

Formato para prácticas de laboratorio

Tema: Uso de sentencias SQL

CONSULTAS BASICAS EN SQL SERVER

Tema 4. Lenguajes de consulta comerciales

MANUALITO MS-SQL SERVER

Bases de Datos SQL - Ejemplos

Implementación de la integridad de datos

1. Introducción: Qué es un Modelo de Datos? 2. Estática del modelo de datos relacional

Transcripción:

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 Organization for Standardization) Definición del lenguaje hecha por ISO 2 Índice Escritura de Comandos Definición de Datos Actualizaciones de la Base de Datos 3 Objetivos Un lenguaje de bases de datos debe permitir al usuario: Crear la base de datos y las estructuras de relación Realizar tareas básicas de gestión de datos, como la inserción, modificación y borrado de los datos de las relaciones Realizar consultas tanto simples como complejas Componentes Componentes principales del : Lenguaje de Definición de Datos (DDL, Data Definition Language) para definir la estructura de la base de datos y controlar el acceso a los datos Lenguaje de Manipulación de Datos (DML, Data Manipulation Language) para extraer y actualizar los datos Su sintaxis y estructura deben ser relativamente fáciles de aprender Portable No es completo computacionalmente porque no tiene estructuras de control es un lenguaje orientado a transformación de datos 5 6

Características Se trata de un lenguaje no procedimental: lo que se especifica es qué información queremos, en lugar de especificar cómo obtenerla no requiere que se especifique el método de acceso a los datos Al igual que la mayoría de los lenguajes modernos, es de formato prácticamente libre, lo que quiere decir que las diversas partes de una instrucción no tienen por qué ser escritas en ubicaciones concretas de la pantalla La estructura de los comandos está compuesta por palabras inglesas normales, tal como, CREATE TABLE, INSERT, SELECT, El estándar ISO utiliza los términos tablas, columnas y filas 7 Escritura de Comandos Instrucciones Cláusulas Una instrucción está compuesta por palabras reservadas y palabras definidas por el usuario Las palabras reservadas son una parte fija del lenguaje y tienen un significado también fijo; Deben escribirse exactamente como se indica y no pueden dividirse en varias líneas Las palabras definidas por el usuario son compuestas por este (de acuerdo a ciertas reglas sintácticas) y representan los nombres de diversos objetos de la base de datos, como tablas, columnas, vistas, índices, Muchos dialectos requieren un terminador de instrucción (normalmente ; ) Escritura de Comandos 9 Aunque es de formato libre, las instrucciones serán más legibles si se utilizan técnicas de sangrado y alineación Cada cláusula de una instrucción debe comenzar en una nueva línea El principio de cada cláusula debe estar alineado con el comienzo de las cláusulas restantes Si una cláusula tiene varias partes, cada una de ellas debe aparecer en un línea distinta y debe estar sangrada con respecto al comienzo de la cláusula, para que se vea claramente la relación Los componentes de una instrucción no distinguen entre mayúsculas y minúsculas (excepto datos carácter) Escritura de Comandos 10 Notación Se usarán letras en mayúsculas para representar las palabras reservadas, las cuales deben escribirse exactamente como se indica Se usarán letras en minúsculas para representar las palabras definidas por el usuario Una barra vertical ( ) indica elección entre alternativas Las llaves ({a}) indican un elemento obligatorio Los corchetes ([a]) indican un elemento opcional Los puntos suspensivos ( ) se emplean para indicar repetición opcional Tipos de Datos de ISO Escritura de Comandos 11

Identificadores Los identificadores se utilizan para identificar objetos en la base de datos (nombres de tablas, nombres de vistas, nombres de columnas, ) Datos Booleanos Valores TRUE y FALSE Soportan el valor UNKNOWN como valor NULL Los caracteres permitidos son: A Z, a z, 0 9 y _ No puede tener más de 128 caracteres de longitud Debe comenzar por una letra No pueden contener espacios 13 14 Datos de Caracteres Datos de Bit CHARACTER [VARYING] [longitud] CHARACTER CHAR; CHARACTER VARYING VARCHAR BIT [VARYING] [longitud] numsucursal CHAR(4) direccion VARCHAR(30) cadenabit BIT(4) 15 16 Datos Numéricos Exactos NUMERIC [precisión [,escala]] DECIMAL [precisión [,escala]] INTEGER SMALLINT INTEGER INT; DECIMAL DEC Datos Numéricos Aproximados FLOAT [precisión] REAL DOUBLE PRECISION habitac SMALLINT salario DECIMAL (7,2) 17 18

Datos de Fecha y Hora DATE TIME [precisióntemporal] [WITH TIME ZONE] TIMESTAMP [precisióntemporal] [WITH TIME ZONE] visitas DATE Datos de Intervalo INTERVAL {{campoinicio TO campofin} campofechahoraúnico} campoinicio = YEAR MONTH DAY HOUR MINUTE [(precisióncampoinicialintervalo)] campofin = YEAR MONTH DAY HOUR MINUTE [(precisiónfraccionessegundo)] campofechahoraúnico = campoinicio SECOND [(precisióncampoinicialintervalo[, precisiónfraccionessegundo])] INTERVAL YEAR(2) TO MONTH 19 20 +, -, *, /: Operadores aritméticos obvios BIT_LENGTH: Longitud de una cadena en bits OCTET_LENGTH: Longitud de una cadena en octetos CHAR_LENGTH: longitud de una cadena en caracteres CAST: Convierte el valor de una expresión de un tipo de datos en un valor correspondiente a otro tipo de datos : Concatena dos cadenas de caracteres o de bits CURRENT_USER (USER): Devuelve una cadena de caracteres que representa el identificador actual de autorización (nombre de usuario) SESSION_USER: Devuelve una cadena de caracteres que representa el identificador de autorización de la sesión SYSTEM_USER: Devuelve una cadena de caracteres que representa el identificador de autorización que ha invocado el módulo actual LOWER: Convierte las letras mayúsculas en minúsculas UPPER: Convierte las letras minúsculas en mayúsculas TRIM: Elimina los caracteres iniciales (LEADING), finales (TRAILING) o tanto iniciales como finales (BOTH) de una cadena 21 22 POSITION: Devuelve la posición de una cadena dentro de otra cadena SUBSTRING: Devuelve una subcadena seleccionada de una cadena CASE: Devuelve un valor entre una serie de valores especificados, basándose en alguna condición CURRENT_DATE: Devuelve la fecha actual en la zona horaria local al usuario CURRENT_TIME: Devuelve la hora actual en la zona horaria predeterminada de la sesión actual CURRENT_TIMESTAMP: Devuelve le fecha y la hora actual en la zona horaria predeterminada de la sesión actual EXTRACT: Devuelve el valor de un campo especificado de un valor de fecha y hora o de intervalo 23 24

Datos Requeridos Características de Integridad Especificador de columna NOT NULL categoria VARCHAR(10) NOT NULL 26 Restricciones de Dominio CHECK (condiciónbúsqueda) CREATE DOMAIN NombreDominio [AS] tipodatos [DEFAULT opciónpredeterminada] [CHECK (condiciónbúsqueda)] DROP DOMAIN NombreDominio [RESTRICT CASCADE] sexo CHAR NOT NULL CHECK (sexo IN ( M, F )) CREATE DOMAIN TipoSexo AS CHAR DEFAULT M CHECK (VALUE IN ( M, F )) sexo TipoSexo NOT NULL Integridad de Entidades PRIMARY KEY UNIQUE PRIMARY KEY (numpropiedad) PRIMARY KEY (numcliente,numpropiedad) 27 28 Integridad Referencial FOREING KEY ON DELETE; ON UPDATE CASCADE, SET NULL, SET DEFAULT, NO ACTION Restricciones Generales CREATE ASSERTION NombreAserción CHECK (condiciónbúsqueda) FOREING KEY (numsucursal) REFERENCES Sucursal FOREING KEY (numpersonal) REFERENCES Personal ON DELETE SET NULL 29 30

Creación n de una Base de Datos Definición de Datos CREATE SCHEMA [Nombre AUTHORIZATION IdentificadorCreador] DROP SCHEMA Nombre [RESTRIC CASCADE] CREATE SCHEMA Test AUTHORIZATION Perez; 32 Creación n de una Tabla Modificación n de una Tabla CREATE TABLE NombreTabla {(NombreColumna tipodatos [NOT NUL] [UNIQUE] [DEFAULT opciónpredeterminada] [CHECK (condiciónbúsqueda)] [, ]} [PRIMARY KEY (listadecolumnas),] {[UNIQUE (listadecolumnas)][, ]} {[FOREING KEY (listacolumnasclaveexterna) REFERENCES NombreTablaPadre [(listacolumnasclavecandidatas)] [MATCH {PARTIAL FULL} [ON UPDATE accciónreferencial] [ON DELETE accciónreferencial]][, ]} {[CHECK (condiciónbúisqueda)][, ]}) 33 ALTER TABLE NombreTabla [ADD[COLUMN] nombrecolumna tipodato [NOT NULL][UNIQUE] [DEFAULT opciónpredeterminada] [CHECK (condiciónbúsqueda)]] [DROP[COLUMN] nombrecolumna [RESTRIC CASCADE]] [ADD[CONSTRAINT[nombreRestricción]] definiciónrest] [DROP[CONSTRAINT] nombreres [RESTRIC CASCADE]] [ALTER[COLUMN] SET DEFAULT opciónpredeterminada] [ALTER[COLUMN] DROP DEFAULT] 34 Eliminar una Tabla Índices DROP TABLE NombreTabla [RESTRICT CASCADE] CREATE [UNIQUE] INDEX NombreÍndice ON nombretabla (NombreColumna[ASC DESC][, ]) DROP INDEX NombreÍndice 35 36

Vistas CREATE VIEW nombrevista [(nuevonombrecolumna [, ])] AS subselección [WITH [CASCADE LOCAL] CHECK OPTION] DROP VIEW NombreVista [RESTRIC CASCADE] Actualización de la Base de Datos 37 Adición n de Datos Modificación n de Datos INSERT INTO NombreTabla [(ListaColumnas)] VALUES (ListaValoresDatos) SELECT UPDATE NombreTabla SET NombreColumna1 = valordatos1 [, ] [WHERE condiciónbúsqueda] INSERT INTO Personal VALUES ( SG16, Alba, Blanco, Ayudante, F, DATE 1957-05-25,8300, B003 ); UPDATE Personal SET salario = salario * 1.03 Actualización n de la Base de Datos 39 Actualización n de la Base de Datos 40 Borrado de Datos DELETE FROM NombreTabla [WHERE condiciónbúsqueda] DELETE FROM Visitas WHERE numpropiedad= PG4 Actualización n de la Base de Datos 41