Voladura Controlada Sobrexcavación (como se lleva a cabo una voladura)
Transac sq ll
1. Lenguaje Transact SQL
BASE DE DATOS
II
Ing. Marco Aurelio Porro Chulli
Ingeniería de Sistemas y
Telemática
INTEGRANTES:
Luisa Vega Montenegro.
Sandrita Rafael Estela.
María Rocío Vásquez Espinoza.
2. T-SQL es un lenguaje sumamente
potente que nos ayuda a definir tareas
mientras trabajamos con bases de datos
Transact-SQL también es conocido por
sus abreviatura como T-SQL.Es una
extensión del SQLMicrosoft junto son
Sybase
Lo que conocemos a SQLcomo el
lenguaje de búsqueda estructurado lo
que viene hacer T-SQL es expander los
estándares de SQLno incluyendo
programación procedural
Debido a que este lenguaje tiene algunas
restricciones en el propio lenguaje casi
siempre lo vemos utilizado en la creación
de los procedimientos almacenados,
funciones de usuario y también en los
triggers.
Lenguaje Transact
SQL
1.CONTENIDO
3.
4.
5. Lenguaje de
Definición de
Datos(DDL)
LENGUAJE DE
MANIPULACIÓN
DE
DATOS(DML)
Lenguaje de Control de
Datos(DCL)
Lenguaje de Control
de Transacciones (TCL)
Lenguaje de Control
De Flujo(CFL)
COMANDOS
6. INSTRUCCIONES DEL LENGUAJE DE DEFINICIÓN DE DATOS
(DDL)
Las instrucciones de DDL definen la base de datos mediante la creación de bases de datos,
tablas y tipos de datos definidos por el usuario. Las instrucciones de DDL se utilizan también
para administrar los objetos de la base de datos. Algunas instrucciones de DDL son:
CREATE nombreObjeto
ALTER nombreObjeto
DROP nombreObjeto
EJEMPLO
Crear Una Tabla
create table TbProducto
(
CodProducto char(6) NOT NULL,
NombreProducto Varchar(30) NOT NULL,
Precio money NOT NULL,
existencia int NOT NULL,
FechaIngreso datetime NOT NULL,
idMarca char(4) NOT NULL,
idCategoria char(3) NOT NULL
)
Go
Modificar Una Tabla
Alter table TbProducto ADD constraint PK_ProductoPRIMARY
KEY(CodProducto)
go
Eliminar Una Tabla
Drop table TbProducto
7. INSTRUCCIONES DEL LENGUAJE DE MANIPULACIÓN DE
DATOS (DML)
Select
codProducto,NombreProducto,Precio,
existencia from TbProducto
Go
Insert Into
TbMarca(CodMarca,NombreMarca)
values('M001','SAMSUNG')
Go
Las instrucciones de DML funcionan con los datos de la base de datos. Mediante estas
instrucciones puede cambiarlos o recuperar información. Las instrucciones de DML
incluyen:
SELECT
INSERT
UPDATE
DELETE
EEMPLO
Update TbMarca set NombreMarca= 'LG' where
CodMarca='M001'
Go
Delete TbMarca where CodMarca='M001'
Go
8. INSTRUCCIONES DEL LENGUAJE DE CONTROL DE DATOS
(DCL)
Las instrucciones de DCL se utilizan para cambiar los permisos asociados con un
usuario o función de la base de datos. En la tabla siguiente se describen las
instrucciones de DCL.
Instrucción Descripción
GRANT Crea una entrada en el sistema de seguridad que permite a un usuario
trabajar con datos o ejecutar ciertas instrucciones de Transact-SQL.
DENY Crea una entrada en el sistema de seguridad que deniega un permiso
de una cuenta de seguridad e impide que el usuario, grupo o función
herede el permiso a través de su pertenencia a grupos o funciones.
REVOKE Quita un permiso concedido o denegado previamente.
De forma predeterminada, sólo los miembros de la función sysadmin,
dbcreator, db_owner o db_securityadmin pueden ejecutar instrucciones DCL.
9. INSTRUCCIONES DEL LENGUAJE DE CONTROL DE
DATOS (DCL)
Ejemplo
USE BdTailor
GRANT SELECTON TbProducto TO public
GO
10. COMMIT: Guarda el trabajo realizado
ROLLBACK: Restaurar la base de datos a la original, hasta el último COMMIT
Transacciones implicitas y explicitas
Para agrupar varias sentencias Transact SQL en una única transacción, disponemos
de los siguientes métodos:
Transacciones explícitas
Cada transacción se inicia explícitamente con la instrucción BEGIN TRANSACTION y se
termina explícitamente con una instrucción COMMIT o ROLLBACK.
Transacciones implícitas
Se inicia automáticamente una nueva transacción cuando se ejecuta una instrucción
que realiza modificaciones en los datos, pero cada transacción se completa
explícitamente con una instrucción COMMIT o ROLLBACK.
Para activar-desactivar el modo de transacciones implícitas debemos ejecutar la
siguiente Instrucción.
INSTRUCCIONES DEL LENGUAJE DE CONTROL DE
TRANSACCIONES (DCL)
11.
12.
13.
14. INSTRUCCIONES DEL LENGUAJE DE CONTROL DE FLUJO
(DCL)
Disponemos de diferentes elementos para el control de flujo, como pueden ser
RETURN, IF... ELSE,WHILE, BREAK, CONTINUE, GO TO, EXECUTE, etc. En los siguientes
apartados aprenderemos cómo utilizarlos.
IF… ELSE
Proporciona una ejecución condicional, permite ejecutar o no ciertas instrucciones
dependiendo de si se cumple o no una determinada condición.
Si la condición se cumple (da como resultado TRUE) se ejecuta la instrucción
SQLo bloque de instrucciones que aparecen a continuación de la condición,
si la condición no se cumple se ejecutan las sentencias que aparecen
después de la palabra ELSE.El bloque ELSEes opcional.
15. INSTRUCCIONES DEL LENGUAJE DE CONTROL DE
FLUJO (DCL)
Ejemplo:
Si nos queremos guardar en una consulta todos los ejemplos para probarlos en
cualquier momento, es conveniente antes de los CREATE PROCEDUREcolocar un
DROP PROCEDURE para que la instrucción CREATE no dé error si el procedimiento ya
existe, pero la primera vez la instrucción DROP PROC nos dará error porque el
procedimiento todavía no existe, así que lo mejor es ejecutar el DROP sólo si el
procedimiento existe, utilizando la función object_id(‘nombre_de_objeto’,’tipo de
objeto’) que nos devuelve el id del objeto y NULL si el objeto no existe.
16. INSTRUCCIONES DEL LENGUAJE DE CONTROL DE
FLUJO (DCL)
WHILE - BREAK–CONTINUE
Esta instrucción permite definir un bucle que repite una sentencia o bloque
de sentencias mientras se cumpla una determinada condición.
Podemos anidar bucles, colocar un bucle WHILE dentro de otro.
BREAK Produce la salida del bucle WHILE más interno. La instrucción
BREAK interna sale al siguiente bucle más externo. Todas las
instrucciones que se encuentren después del final del bucle interno se
ejecutan primero y después se reinicia el siguiente bucle más externo.
CONTINUE Hace que se reinicie el bucle WHILE y omite las
instrucciones que haya
después de la palabra clave CONTINUE.
17. 2.RESUMEN
En este trabajo hemos presentado los comandos más utilizadas del lenguaje Transact sql.
Como ya hemos comentado el Lenguaje Transact SQLes un lenguaje sumamente potente
que nos ayuda a definir tareas mientras trabajamos con base de datos. Debido a que este
lenguaje tiene algunas restricciones en el propio lenguaje casi siempre lo vemos utilizado
en la creación de los procedimientos almacenados, funciones de usuario y también en los
triggers Recordemos cómo será la creación de una base de datos con SQL:
1)En primer lugar, tendremos que dar nombre a la base de datos, con la sentencia
CREATE DATABASE, si la hay, o con CREATE SCHEMA.
2)A continuación definiremos las tablas, los dominios, las aserciones y las
vistas que formarán nuestra base de datos.
3)Una vez definidas las tablas, que estarán completamente vacías, se deberán llenar con la
sentencia INSERT INTO.
Cuando la base de datos tenga un conjunto de filas, la podremos manipular, ya sea
actualizando filas o bien haciendo consultas.
Además, podemos usar todas las sentencias de control que hemos explicado.
18. 3.SUMMARY
In this paper we have presented the most commonly used language of
Transact-SQL commands.
As mentioned the Transact SQLlanguage is a very powerful language that
helps us define tasks while working with database. Because this language has
some restrictions on the language itself we see almost always used in the
creation of stored procedures, user roles and also in triggers
Remember how will the creation of a database with SQL:
1)First, we have to give a name to the database with the CREATEDATABASE, if
any, or CREATE SCHEMA.
2)Then define the tables, domains, assertions and views that form our
database.
3)Once you have defined tables, which will be completely empty, they should
be filled with the INSERT INTO statement.
When the database has a set of rows, we can manipulate, either updating rows
or doing consultations.
In addition, we can use all control statements that we have explained.
19. 4.RECOMENDACIONES
Al momento de Utilizar el Lenguaje Transact Sql hay que tener algunas consideraciones:
No utilizar un SELECT*, y esto más que buena práctica debería ser regla
No use la cláusula into nombre de tabla (“SELECT… INTO”). Esto bloqueará mientras
se ejecuta la consulta las tablas del sistema. En su lugar cree primero las tablas y
luego re-escribe la sentencia como INSERT INTO tabla_name SELECT.
Si usa el operador UNION y existe la seguridad de que ambos select NO tienen
registros duplicados, entonces es mejor usar UNION ALL, para evitar que
implícitamente se haga uso del operador DISTINCT el cual puede requerir que se
almacenen todos los datos de salida en una tabla temporal para que luego se
reordenen y se filtren los datos duplicados, lo cual aumenta considerablemente el
costo de la consulta.
Es recomendable usar joins a un subquery.
Promover el uso de EXISTSy NOT EXISTS, en lugar de IN y NOT IN.
20. 5.CONCLUSIONES
El lenguaje Transact sql nos Permite:
Definir bloques de instrucciones SQL que se tratan como
unidades de ejecución.
Realizar ejecuciones Condicionales.
Realizar ejecuciones iterativas o repetitivas.
Garantizar el tratamiento modular con la declaración de
variables locales y el uso de procedimientos almacenados.
Transact-SQL es fundamental para trabajar con SQL Server. Ya que
todas las aplicaciones que se comunican con SQL Server lo hacen
enviando instrucciones.
Transact-SQL al servidor, independientemente de la interfaz de
usuario.
21. 6.APRECIACIÓN DEL EQUIPO
Transact-SQL es fundamental para trabajar con SQL
Server. Ya que todas las
aplicaciones que se comunican con SQL Server lo
hacen enviando instrucciones
Transact-SQL al servidor, independientemente de la
interfaz de usuario de la aplicación.
22. Sybase: fue una compañía dedicada al desarrollo de
tecnología de la Información.
Dbcreator: Es un tipo de archivo DAO asociado a Third-
Party Application desarrollado por DreamMail para el
Sistema Operativo de Windows.
Restrict: restringir
Cascade: Cascada.
Union all: Une o selecciona todos los valores.
7.GLOSARIO