Sei sulla pagina 1di 46

TRANSACT -SQL

Setiembre 2012

DEFINICIN
El
SQL
(Lenguaje
de
consulta
estructurado) es un lenguaje declarativo de
acceso a bases de datos relacionales que
permite especificar diversos tipos de
operaciones sobre las mismas. Una de sus
caractersticas es el manejo del lgebra y el
clculo
relacional
permitiendo
lanzar
consultas con el fin de recuperar informacin
de inters de una base de datos, as como
tambin hacer cambios sobre la misma.

CARACTERSTICAS
Sencillez: Principalmente derivada de la
sencillez conceptual del modelo en el que
se basa, el modelo relacional.
Carcter
Estndar:
Existe
una
especificacin estndar de este lenguaje,
la ANSI SQL. No obstante, cada fabricante
refleja las peculiaridades propias de su
SGBD modificando su SQL.
Lenguaje
Declarativo:
Cuando
realizamos una consulta, describimos cul
es el conjunto de datos que queremos
obtener, sin tener que especificar cul es la
estrategia de recuperacin de esos datos.
Especificamos QU queremos, sin decir
CMO conseguirlo.

DEFINICIN TRANSACT-SQL
Es una extensin al SQL de Microsoft y Sybase. SQL, que
frecuentemente se dice ser un Lenguaje de Bsquedas
Estructurado (por sus siglas en ingls), es un lenguaje de
cmputo estandarizado, desarrollado originalmente por
IBM para realizar bsquedas, alterar y definir bases de
datos relacionales utilizando estatutos declarativos. T-SQL
expande el estndar de SQL para incluir programacin
procedural, variables locales, varias funciones de soporte
para procesamiento de strings, procesamiento de fechas,
matemticas, etc, y cambios a los estatutos DELETE y
UPDATE. Estas caractersticas adicionales hacen de TSQL un lenguaje que cumple con las caractersticas de un
autmata de Turing

LENGUAJE DE CONTROL DE DATOS


Un Lenguaje de Control de Datos
(DCL por sus siglas en ingls: Data
Control Language) es un lenguaje
proporcionado por el Sistema de
Gestin de Base de Datos que
incluye una serie de comandos SQL
que permiten al administrador
controlar el acceso a los datos
contenidos en la Base de Datos.

Permisos
Todos los elementos protegibles de SQL Server tienen
permisos asociados que se pueden conceder a una
entidad de seguridad.

Grant
Concede permisos sobre un elemento protegible a una
entidad de seguridad.

Sintaxis:

Revoke
Quita un permiso concedido o denegado previamente.

Tabla
Grant select,insert,update,delete on [TSIVOR_LOCALIDAD] to [geoforce]

Vista
Grant select,insert,update,delete on [VLISTAUSUARIAS] to [geoforce]

Procedure
Grant Execute on [PROC_PADRONV_LISTARKEY] to [geoforce]

Lenguaje de definicin de datos


Un lenguaje de definicin de
datos (Data Definition Language,
DDL por sus siglas en ingls) es un
lenguaje proporcionado por el
sistema de gestin de base de
datos que permite a los usuarios de
la misma llevar a cabo las tareas de
definicin de las estructuras que
almacenarn los datos as como de
los procedimientos o funciones que
permitan consultarlos.

Create database
Crea una nueva base de datos y los archivos que se usan
para almacenar la base de datos.
Sintaxis:

CREATE DATABASE database_name

Ejemplo:

CREATE DATABASE SAN_MARTIN


Se puede verificar usando el siguiente codigo:
SELECT name, size, size*1.0/128 AS [Size in MBs]
FROM sys.master_files WHERE name =
NSAN_MARTIN'

Create table
Crea una nueva base de datos y los archivos que se usan para almacenar la
base de datos

Sintaxis:

CREATE TABLE TSIVOR_UBIGEO


(
CODUBIGEO VARCHAR(6) NOT NULL,
TXTDEPARTAMENTO VARCHAR(40) NOT NULL,
TXTPROVINCIA VARCHAR(40) NOT NULL,
TXTDISTRITO VARCHAR(40) NOT NULL,
CONSTRAINT PK_CODUBIGEO PRIMARY KEY (CODUBIGEO)
)

CREATE TABLE TSIVOR_RENAES


(
CODUNICO VARCHAR(8) NOT NULL,
TXTNOMBESTAB VARCHAR(80) NOT NULL,
CODCLASIFICACION VARCHAR(1) NOT NULL,
CODTIPO VARCHAR(1) NOT NULL,
CODUBIGEO VARCHAR(6),
TXTDIRECCION VARCHAR(100),
CODDIRESA VARCHAR(2),
CODRED VARCHAR(2),
CODMICRORED VARCHAR(2),
CODUE VARCHAR(4),
CODCATEGORIA VARCHAR(4),
TXTTELEFONO VARCHAR(15),
TXTDOCCATE VARCHAR(70),
TXTNUMDOCCATE VARCHAR(70),
TXTHORARIO VARCHAR(30),

FECINICIOACT DATE,
TXTRESPONSABLE VARCHAR(70),
CODESTADO VARCHAR(1),
CONSTRAINT PK_CODUNICO PRIMARY KEY (CODUNICO),
CONSTRAINT FK_RENAES_CLASIFICACION FOREIGN KEY
(CODCLASIFICACION) REFERENCES
TSIVOR_CLASIFICACION(CODCLASIFICACION),
CONSTRAINT FK_RENAES_UBIGEO FOREIGN KEY (CODUBIGEO)
REFERENCES TSIVOR_UBIGEO(CODUBIGEO),
CONSTRAINT FK_RENAES_UE FOREIGN KEY (CODUE) REFERENCES
TSIVOR_UE(CODUE),
CONSTRAINT FK_RENAES_CATEGORIA FOREIGN KEY (CODCATEGORIA)
REFERENCES TSIVOR_CATEGORIA(CODCATEGORIA)
)

Drop table
Quita una o varias definiciones de tabla y todos los datos, ndices,
desencadenadores, restricciones y especificaciones de permisos de
esas tablas.

Alter table

Create user
Agrega un usuario a la base de datos actual.

Alter user
Cambia el nombre de un usuario de base de datos o
cambia su esquema predeterminado.
Sintaxis para ALTER USER

Ejemplo ALTER USER

Alter table
Modifica una definicin de tabla al alterar, agregar o quitar
columnas y restricciones, reasignar particiones, o
deshabilitar o habilitar restricciones y desencadenadores.

Ejemplos Alter table


/* AADIR CAMPOS A LA TABLA HIS2011 */
ALTER TABLE HIS2011
ADD
PROGRAMA VARCHAR(50),
PRODUCTO VARCHAR(80),
SUBPRODUCTO VARCHAR(80),
GRUPO VARCHAR(30),
TIPO VARCHAR(40),
D1RA NUMERIC(1),
D2DA NUMERIC(1),
D3RA NUMERIC(1),
PROTEGIDOS NUMERIC(10,0);

Ejemplos Alter table


/* ELIMINAR CAMPOS A LA TABLA HIS2011 */
ALTER TABLE HIS2011
DROP COLUMN
PROGRAMA,
PRODUCTO,
SUBPRODUCTO,
GRUPO,
TIPO,
D1RA,
D2DA,
D3RA,
PROTEGIDOS;

Lenguaje de manipulacin de datos


El Lenguaje de Manipulacin de
Datos
(Data
Manipulation
Language, DML) es un lenguaje
proporcionado por el sistema de
gestin de base de datos que
permite a los usuarios de la misma
llevar a cabo las tareas de consulta
o manipulacin de los datos,
organizados por el modelo de datos
adecuado.

1. Select

Select
La seleccin total o parcial de una
tabla se lleva a cabo mediante la
instruccin
Select.
En
dicha
seleccin hay que especificar: Los
campos que queremos seleccionar,
la tabla en la que hacemos la
seleccin y la condicin que vamos
a usar.

Sintaxis

Operadores
En la sentencia SELECT
podemos
utilizar
los
siguientes operadores que
sern utilizados despus de
la clusula Where y pueden
ser combinados hbilmente
mediante parntesis para
optimizar nuestra seleccin
a muy altos niveles.

Operadores

Operadores

In , Between
Un mtodo fcil de usar condiciones compuestas es usando IN o BETWEEN. Por
ejemplo si t quieres listar todos los encargados y Tcnico:
SELECT * FROM EMPLEADOS WHERE CARGO IN ('Encargado', 'Tcnico');
O para listar aquellos que ganen ms o 30.000, pero menos o igual que 50.000,
usa:
SELECT * FROM EMPLEADOS WHERE SALARIO BETWEEN 30000 AND 50000;
Para listar todos los que no estn en este rango:
SELECT * FROM EMPLEADOS WHERE SALARIO NOT BETWEEN 30000 AND
50000;
De forma similar, NOT IN lista todas las filas excluyendo aquellas de la lista IN.
SELECT * FROM EMPLEADOS WHERE CARGO NOT IN ('Encargado',
'Tcnico');

2. Insert

3. Update

4. Delete

2. Join

DEFINICION
La sentencia join en SQL permite combinar
registros de dos o ms tablas en una base de
datos relacional. En el Lenguaje de Consultas
Estructurado (SQL), hay tres tipo de JOIN: interno,
externo, y cruzado.

GRACIAS POR SU ATENCION

E- mail: manuelj.sanchezr@gmail.com

Potrebbero piacerti anche