LENGUAJE SQL1

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 24

UNIVERSIDAD PUBLICA DE EL ALTO

INGENIERIA DE SISTEMAS
BASE DE DATOS I

LENGUAJE SQL

CHRISTIAM ROMAN
Introducción
• El lenguaje de consulta estructurado o SQL (por sus siglas
en inglés Structured Query Language) es un lenguaje
declarativo de acceso a bases de datos relacionales que
permite especificar diversos tipos de operaciones en ellas.
Una de sus características es el manejo del álgebra y el
cálculo relacional que permiten efectuar consultas con el
fin de recuperar de forma sencilla información de interés
de bases de datos, así como hacer cambios en ella.
• El SQL es un lenguaje de acceso a bases de datos que
explota la flexibilidad y potencia de los sistemas
relacionales y permite así gran variedad de operaciones.
Componentes del SQL
• El lenguaje SQL está compuesto por comandos, cláusulas,
operadores y funciones de agregado. Estos elementos se
combinan en las instrucciones para crear, actualizar y
manipular las bases de datos.
• Comandos
• Existen tres tipos de comandos SQL:
• Los DDL(Data Definition Language) que permiten crear y
definir nuevas bases de datos, campos e índices.
Los DML(Data Manipulation Language) que permiten
generar consultas para ordenar, filtrar y extraer datos de la
base de datos.
• Los DCL(Data Control Language) que se encargan de definir
las permisos sobre los datos
SQL
(DDL) Lenguaje de definición de datos
• El lenguaje de definición de datos (en inglés Data Definition
Language, o DDL), es el que se encarga de la modificación de la
estructura de los objetos de la base de datos. Incluye órdenes
para modificar, borrar o definir las tablas en las que se
almacenan los datos de la base de datos. Existen cuatro
operaciones básicas: CREATE, ALTER, DROP y TRUNCATE
Comando Descripción
CREATE Utilizado para crear nuevas tablas, campos e índices

DROP Empleado para eliminar tablas e índices

ALTER Utilizado para modificar las tablas agregando campos o


cambiando la definición de los campos.
DDL
• CREATE
• Este comando crea un objeto dentro del gestor de base
de datos. Puede ser una base de datos, tabla, índice,
procedimiento almacenado o vista.

• Ejemplo: créate database mibasededatos1


Creacion tablas
• CREATE TABLE nombreDeTabla (atributo1 tipo1, …,
atributo n tipo n);
• Ejemplo:
CREATE TABLE Empleado
(id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, Nombre
VARCHAR(50), Apellido VARCHAR(50), Direccion
VARCHAR(255),Ciudad VARCHAR(60), Telefono VARCHAR(15), Peso
VARCHAR (5), Edad int (2), idCargo INT)
• CREATE TABLE productos(cod_producto int,
nombre nchar(20),apellido varchar (30),precio
decimal(5,2));
ALTER
• Este comando permite modificar la estructura de un
objeto. Se pueden agregar/quitar campos a una tabla,
modificar el tipo de un campo, agregar/quitar índices a
una tabla, modificar un trigger, etc.
• ALTER TABLE 'NOMBRE_TABLA' ADD NUEVO_CAMPO INT;
• ALTER TABLE 'NOMBRE_TABLA' DROP COLUMN
NOMBRE_COLUMNA;
Ejemplo (agregar columna a una tabla):
• ALTER TABLE productos add fecha date;
• ALTER TABLE productos drop column precio;
• ALTER TABLE productos alter column nombre varchar(25);
DROP
• Este comando elimina un objeto de la base de datos.
Puede ser una tabla, vista, índice, trigger, función,
procedimiento o cualquier otro objeto que el motor de
la base de datos soporte. Se puede combinar con la
sentencia ALTER.
• Ejemplo:
• DROP TABLE 'NOMBRE_TABLA';
• DROP SCHEMA 'ESQUEMA;'
• DROP DATABASE 'BASEDATOS‘
Eliminar una tabla
• drop table productos;
Eliminar una base de datos
• drop database laboratorio1
TRUNCATE
• Este comando trunca todo el contenido de una tabla. La
ventaja sobre el comando DROP, es que si se quiere
borrar todo el contenido de la tabla, es mucho más
rápido, especialmente si la tabla es muy grande. La
desventaja es que TRUNCATE sólo sirve cuando se quiere
eliminar absolutamente todos los registros, ya que no se
permite la cláusula WHERE. Si bien, en un principio, esta
sentencia parecería ser DML (Lenguaje de Manipulación
de Datos), es en realidad una DDL, ya que internamente,
el comando TRUNCATE borra la tabla y la vuelve a crear y
no ejecuta ninguna transacción.
Ejemplo:
• TRUNCATE TABLE 'NOMBRE_TABLA';
Lenguaje de manipulación de datos DML(Data
Manipulation Language)
• Un lenguaje de manipulación de datos (Data Manipulation
Language, o DML en inglés) es un lenguaje proporcionado por
el sistema de gestión de base de datos que permite a los
usuarios llevar a cabo las tareas de consulta o manipulación de
los datos, organizados por el modelo de datos adecuado. El
lenguaje de manipulación de datos más popular hoy día es SQL,
usado para recuperar y manipular datos en una base de datos
relacional.
DML
Comando Descripción

SELECT Utilizado para consultar registros de la base de


datos que satisfagan un criterio determinado

INSERT Utilizado para cargar lotes de datos en la base de


datos en una única operación.

UPDATE Utilizado para modificar los valores de los campos y


registros especificados Utilizado para modificar las
tablas agregando campos o cambiando la definición
de los campos.

DELETE Utilizado para eliminar registros de una tabla


INSERT
• Una sentencia INSERT de SQL agrega uno o más registros a
una (y sólo una) tabla en una base de datos relacional.

• Forma básica:
INSERT INTO ''tabla'' (''columna1'', [''columna2,... '']) VALUES
(''valor1'', [''valor2,...''])

Las cantidades de columnas y valores deben ser iguales. Si una columna


no se especifica, le será asignado el valor por omisión. Los valores
especificados (o implícitos) por la sentencia INSERT deberán satisfacer
todas las restricciones aplicables. Si ocurre un error de sintaxis o si
alguna de las restricciones es violada, no se agrega la fila y se devuelve
un error
Insert
INSERT INTO tabla (campo1, campo2, …, campoN) VALUES
(valor1, valor2, …, valorN)

INSERT INTO tabla (campo5, campo3, campo1, campo18, …,


campoN) VALUES (valor5, valor3, valor1, valor18, …, valorN)
INSERT INTO tabla VALUES (valorA1, valorA2, …, valorAN),
(valorB1, valorB2, …, valorBN),
(valorC1, valorC2, …, valorCN)
INSERT INTO tabla SELECT consulta_aquí (Se puede realizar una
consulta y el resultado es el que se insertara en la tabla)
INSERT
Ejemplo:
• Insert into empleados values (20, ´carlos´, ‘sanchez’
´06/12/83´, 13);
• Cuando se conoce el numero de columnas y el
orden que estan creadas se puede introducir
directamente los valores en el mismo orden sin
tener que especificar las columnas.
UPDATE

• Una sentencia UPDATE de SQL es utilizada para


modificar los valores de un conjunto de registros
existentes en una tabla.

UPDATE tabla SET campo1 = 'nuevo valor campo1'


WHERE campo2 = 'N';
UPDATE
UPDATE tabla SET campo1 = valor1, campo2 = valor2, …, campoN =
valorN WHERE campoM = valorM

• WHERE:
• WHERE campoM = valorM (=, >, <, <>)
• WHERE campoM BETWEEN valor1 AND valor2
• WHERE campoM IN (valor1, valor2, …, valorN)
• WHERE campoM IN SELECT consulta
• WHERE campoM NOT IN
Ejemplo
UPDATE socios SET puntos=puntos+2 WHERE puntos < 2;
DELETE

• Una sentencia DELETE de SQL borra uno o más registros


existentes en una tabla.
• Forma básica:

• DELETE FROM 'tabla' WHERE 'columna1' = 'valor1'


• Ejemplo:
• DELETE FROM ESTUDIANTE WHERE nombre_estud =
'FERNANDO';
Creacion de llaves primaria y foránea
sintaxis de primary key
• nombre_columna TIPO(var char,int) not null
CONSTRAINT PK_nombre_columna PRIMARY KEY

sintaxis de foreign key


• CONSTRAINT FK_ nombre FOREIGN KEY
(nombre_columna, ...)
REFERENCES nombre_tabla (nombre_columna, ...)
PRIMARY KEY FOREIGN KEY
Ejemplo:
• create table juez (cod_juez int
CONSTRAINT PK_cod_juez PRIMARY KEY not null,
nom_juez varchar (20). ap_juez varchar (20),
nro_juzgado varchar (20))
• create table casocorrupcion (cod_caso int
CONSTRAINT PK_cod_caso PRIMARY KEY not null,
nom_caso varchar (20), tipocaso varchar(20),
cod_juez int not null, CONSTRAINT FK_ cod_juez
FOREIGN KEY (cod_juez) REFERENCES juez (cod_juez)
)
PRIMARY KEY
• create table proveedor (cod_proveedor int
CONSTRAINT PK_cod_proveedor PRIMARY KEY not
null, nom_proveedor var char (20))
• create table producto (cod_producto int
CONSTRAINT PK_cod_product PRIMARY KEY not null,
nom_producto var char (20))
PRIMARY KEY FOREIGN KEY
Ejemplo:
• create table ventas
(cod_ventas int CONSTRAINT PK_cod_ventas PRIMARY KEY not null,
cod_proveedor int not null CONSTRAINT FK_ cod_proveedor FOREIGN
KEY REFERENCES proveedor (cod_proveedor),
cod_producto int not null CONSTRAINT FK_cod_producto FOREIGN KEY
REFERENCES producto (cod_producto) )
Fin…..
CHECK
• Con este tipo de restricción, se especifica que los valores ingresados en la columna
deben cumplir la regla o formula especificada. Por ejemplo:
• CREATE TABLE nombreEsquema.nombreTabla
• (
• nombreColumna1 INT NULL,
• nombreColumna2 VARCHAR(100) NOT NULL,
• nombreColumna3 NVARCHAR(200) NOT NULL,
• --VALORES POSITIVOS
• CONSTRAINT CH_nombreRestriccion CHECK (nombreColumna1>=0),
• -- SOLO VALORES IGUALES A 10 20 30 40
• CONSTRAINT CH_nombreRestriccion2 CHECK (nombreColumna1 IN (10,20,30,40)),
• --VALORES CONTENIDOS EN UN RANGO
• CONSTRAINT CH_nombreRestriccion3 CHECK (nombreColumna1>=1 AND
nombreColumna1 <=30)
• );

También podría gustarte