SlideShare uma empresa Scribd logo
1 de 20
Introducción a
Transact-SQL
Introducción


     E lenguaje de programación Transact-SQL
     Tipos de instrucciones de Transact-SQL
     Elementos de la sintaxis de Transact-SQL
El lenguaje de programación Transact-SQL


     Implementa el estándar ISO del nivel básico de la
      especificación ANSI SQL-92
     Se pueden ejecutar desde cualquier producto que
      cumpla los requisitos básicos
     Incluye una funcionalidad ampliada
 Tipos de instrucciones de Transact-SQL


     Instrucciones del Lenguaje de definición de datos
     Instrucciones del Lenguaje de control de datos
     Instrucciones del Lenguaje de tratamiento de datos
Instrucciones del Lenguaje de definición de datos


      Definen los objetos de la base de datos
          CREATE nombreObjeto
          ALTER nombreObjeto
          DROP nombreObjeto
      Deben tener los permisos adecuados

USE northwind
USE northwind
CREATE TABLE customer
CREATE TABLE customer
(cust_id int, company varchar(40),
(cust_id int, company varchar(40),
contact varchar(30), phone char(12) )
contact varchar(30), phone char(12) )
GO
GO
Instrucciones del Lenguaje de control de datos


      Establecer o cambiar los permisos
          GRANT
          DENY
          REVOKE
      Deben tener los permisos adecuados

USE northwind
USE northwind
GRANT SELECT ON products TO public
GRANT SELECT ON products TO public
GO
GO
Instrucciones del Lenguaje de tratamiento de datos


       Las instrucciones DML se utilizan para cambiar datos o
        recuperar información
          SELECT

          INSERT

          UPDATE

          DELETE

       Deben tener los permisos adecuados

USE northwind
USE northwind
SELECT categoryid, productname, productid, unitprice
SELECT categoryid, productname, productid, unitprice
FROM products
FROM products
GO
GO
 Elementos de la sintaxis de Transact-SQL


     Directivas de proceso      Funciones del sistema
      por lotes
                                 Operadores
     Comentarios
                                 Expresiones
     Identificadores
                                 Elementos del lenguaje
     Tipos de datos              de control de flujo
     Variables                  Palabras clave
                                  reservadas
Directivas de proceso por lotes

     GO
          Envía lotes de instrucciones de Transact-SQL a las
           herramientas y utilidades
          No se trata, realmente, de una instrucción de
           Transact-SQL
     EXEC
          Ejecuta una función definida por el usuario, un
           procedimiento de sistema, un procedimiento
           almacenado definido por el usuario o un procedimiento
           almacenado extendido
          Controla la ejecución de una cadena de caracteres
           dentro de un lote de Transact-SQL
Comentarios

     Comentarios de línea           Ejemplo 1
                                     Ejemplo 1
SELECT productname
SELECT productname
, (unitsinstock - unitsonorder) -- Calcula el inventario
, (unitsinstock - unitsonorder) -- Calcula el inventario
, supplierID
, supplierID
FROM products
FROM products
GO
GO

     Comentarios de bloque          Ejemplo 3
                                     Ejemplo 3
/*
/*
 Este código devuelve todas las filas de la tabla
 Este código devuelve todas las filas de la tabla
 products y muestra el precio por unidad, el precio
 products y muestra el precio por unidad, el precio
 aumentado en un 10 por ciento y el nombre del producto.
 aumentado en un 10 por ciento y el nombre del producto.
*/
*/
USE northwind
USE northwind
SELECT unitprice, (unitprice * 1.1), productname
SELECT unitprice, (unitprice * 1.1), productname
FROM products
FROM products
GO
GO
 Identificadores
   Identificadores estándar
       El primer carácter debe ser un carácter alfabético
       Otros caracteres pueden incluir letras, números o símbolos
      Los identificadores que comienzan con un símbolo tienen
       usos especiales
   Identificadores delimitados
       Se utilizan cuando los nombres contienen espacios
        incrustados
       Se utilizan cuando partes de los nombres incluyen
        palabras reservadas
       Deben encerrarse entre corchetes ([ ]) o dobles comillas (" ")
Directrices de denominación para los identificadores

     Poner nombres cortos
     Utilizar nombres significativos cuando sea posible
     Utilizar una convención de denominación clara y
      sencilla
     Utilizar un identificador que distinga el tipo de objeto
          Vistas
          Procedimientos almacenados
     Hacer que los nombres de los objetos y de los usuarios
      sean únicos
          Tabla sales y función sales
Tipos de datos


     Números                     Variaciones de SQL
     Fechas                      Texto e imagen
     Caracteres                  Tablas
     Binario                     Cursores
     Identificadores únicos      Tipos de datos definidos
      (GUID)                       por el usuario
Variables

    Variable definida por el usuario en una instrucción
     DECLARE @
    Valores asignados con una instrucción SET o SELECT @
    Las variables tienen el ámbito Local o Global

USE northwind
USE northwind
DECLARE @EmpID varchar(11)
DECLARE @EmpID varchar(11)
        ,@vlName char(20)
        ,@vlName char(20)
SET @vlname = 'Dodsworth'
SET @vlname = 'Dodsworth'
SELECT @EmpID = employeeid
SELECT @EmpID = employeeid
 FROM employees
 FROM employees
 WHERE LastName = @vlname
 WHERE LastName = @vlname
SELECT @EmpID AS EmployeeID
SELECT @EmpID AS EmployeeID
GO
GO
 Funciones del sistema

      Funciones de agregado
USE northwind
USE northwind
SELECT AVG (unitprice) AS AvgPrice FROM products
SELECT AVG (unitprice) AS AvgPrice FROM products
GO
GO

      Funciones escalares
USE northwind
USE northwind
SELECT DB_NAME() AS 'database‘
SELECT DB_NAME() AS 'database‘
GO
GO

      Funciones de conjunto de filas
SELECT *
SELECT *
 FROM OPENQUERY
 FROM OPENQUERY
  (OracleSvr, 'SELECT name, id FROM owner.titles')
  (OracleSvr, 'SELECT name, id FROM owner.titles')
Ejemplos de función del sistema

           Ejemplo 1
SELECT
SELECT   'ANSI:', CONVERT(varchar(30), GETDATE(), 102) AS
         'ANSI:', CONVERT(varchar(30), GETDATE(), 102) AS
Style
Style
UNION
UNION
SELECT
SELECT   'Japanese:', CONVERT(varchar(30), GETDATE(), 111)
         'Japanese:', CONVERT(varchar(30), GETDATE(), 111)
UNION
UNION
SELECT
SELECT   'European:', CONVERT(varchar(30), GETDATE(), 113)
         'European:', CONVERT(varchar(30), GETDATE(), 113)
GO
GO

         Resultado

                        Style
                        Style
           ANSI:
            ANSI:       1998.03.19
                         1998.03.19
           Japanese:
            Japanese:   1998/03/19
                         1998/03/19
           European:
            European:   19 Mar 1998 16:34:40:616
                         19 Mar 1998 16:34:40:616
Operadores


     Tipos de operadores
         Aritmético
         Comparación
         Concatenación de cadenas
         Lógico
     Niveles de precedencia de los operadores
Expresiones


      Combinación de símbolos y operadores
      Evaluación de valores escalares simples
      El tipo de datos del resultado depende de los
       elementos que forman la expresión


SELECT OrderID, ProductID
SELECT OrderID, ProductID
       ,(UnitPrice * Quantity) as ExtendedAmount
       ,(UnitPrice * Quantity) as ExtendedAmount
 FROM [Order Details]
 FROM [Order Details]
 WHERE (UnitPrice * Quantity) > 10000
 WHERE (UnitPrice * Quantity) > 10000
GO
GO
Elementos del lenguaje de control de flujo
                     Ejemplo 2
                     Ejemplo 2
                                 DECLARE @n tinyint
                                 DECLARE @n tinyint
                                 SET @n = 5
                                 SET @n = 5
    Nivel de instrucción        IF (@n BETWEEN 4 and 6)
                                 IF (@n BETWEEN 4 and 6)
                                  BEGIN
                                  BEGIN
         Bloques BEGIN … END      WHILE (@n > 0)
                                    WHILE (@n > 0)
                                     BEGIN
                                     BEGIN
         Bloques IF … ELSE           SELECT @n AS 'Number'
                                      SELECT @n AS 'Number'
                                        ,CASE
                                         ,CASE
         Construcciones WHILE             WHEN (@n % 2) = 1
                                           WHEN (@n % 2) = 1
                                             THEN ‘ODD'
                                             THEN ‘ODD'
                                           ELSE ‘EVEN'
    Nivel de fila                         ELSE ‘EVEN'
                                          END AS 'Type'
                                          END AS 'Type'
                                      SET @n = @n - 1
         CASE expresión              SET @n = @n - 1
                                     END
                                     END
                                  END
                                  END
                                 ELSE
                                 ELSE
                                  PRINT ‘NO ANALYSIS‘
                                  PRINT ‘NO ANALYSIS‘
                                 GO
                                 GO
Palabras clave reservadas


     Nombres de identificadores que tienen un significado
      especial
         Palabras clave de Transact-SQL
         Palabras clave ANSI SQL-92
         Palabras clave reservadas de ODBC
     No utilice palabras clave reservadas para nombres de
      identificadores

Mais conteúdo relacionado

Mais procurados

Sentencias dml y ddl
Sentencias dml y ddlSentencias dml y ddl
Sentencias dml y ddl
kleberyauti
 
Lenguaje de consulta de datos
Lenguaje de consulta de datosLenguaje de consulta de datos
Lenguaje de consulta de datos
Francis Xavier
 

Mais procurados (17)

Bd 2 1 fundamentos transact sql
Bd 2   1 fundamentos transact sqlBd 2   1 fundamentos transact sql
Bd 2 1 fundamentos transact sql
 
Lenguaje estructurado de consultas sql
Lenguaje estructurado de consultas sqlLenguaje estructurado de consultas sql
Lenguaje estructurado de consultas sql
 
Introducción al SQL
Introducción al SQLIntroducción al SQL
Introducción al SQL
 
Diapositivas transact sql
Diapositivas transact sqlDiapositivas transact sql
Diapositivas transact sql
 
Comandos SQL
Comandos SQLComandos SQL
Comandos SQL
 
Sentencias dml y ddl
Sentencias dml y ddlSentencias dml y ddl
Sentencias dml y ddl
 
lenguaje transact
lenguaje transactlenguaje transact
lenguaje transact
 
Lenguaje de consulta de datos
Lenguaje de consulta de datosLenguaje de consulta de datos
Lenguaje de consulta de datos
 
Plsql y paquetes
Plsql y paquetesPlsql y paquetes
Plsql y paquetes
 
Lenguaje transact
Lenguaje transactLenguaje transact
Lenguaje transact
 
Curso Básico de Pl Sql Oracle
Curso Básico de Pl Sql OracleCurso Básico de Pl Sql Oracle
Curso Básico de Pl Sql Oracle
 
Introduccion al sql query
Introduccion al sql queryIntroduccion al sql query
Introduccion al sql query
 
Base de datos - Clase 3
Base de datos - Clase 3Base de datos - Clase 3
Base de datos - Clase 3
 
Intro sql y plsql
Intro sql y plsqlIntro sql y plsql
Intro sql y plsql
 
Lenguaje Transact sql
Lenguaje Transact sqlLenguaje Transact sql
Lenguaje Transact sql
 
Lenguaje de transact
Lenguaje de transactLenguaje de transact
Lenguaje de transact
 
Base de datos - Clase 2
Base de datos - Clase 2Base de datos - Clase 2
Base de datos - Clase 2
 

Destaque

Mapa mental de los rubros que propone mcrosoft para sql
Mapa mental de los rubros que propone mcrosoft para sqlMapa mental de los rubros que propone mcrosoft para sql
Mapa mental de los rubros que propone mcrosoft para sql
lolita_89
 
Unid2 transact sql 1
Unid2  transact sql 1Unid2  transact sql 1
Unid2 transact sql 1
ALEXSILVARSM
 
Teorico palabras reservada
Teorico palabras reservadaTeorico palabras reservada
Teorico palabras reservada
malaclau
 
Principales funciones de excel
Principales funciones de excelPrincipales funciones de excel
Principales funciones de excel
Tio Roberto C A
 
PostgreSQL - Lección 2 - Restringiendo y Ordenando los Datos retornados por e...
PostgreSQL - Lección 2 - Restringiendo y Ordenando los Datos retornados por e...PostgreSQL - Lección 2 - Restringiendo y Ordenando los Datos retornados por e...
PostgreSQL - Lección 2 - Restringiendo y Ordenando los Datos retornados por e...
Nicola Strappazzon C.
 
PostgreSQL - Lección 1 - Usando la sentencia SELECT
PostgreSQL - Lección 1 - Usando la sentencia SELECTPostgreSQL - Lección 1 - Usando la sentencia SELECT
PostgreSQL - Lección 1 - Usando la sentencia SELECT
Nicola Strappazzon C.
 
PostgreSQL - Lección 5 - Recibiendo datos desde múltiples tablas
PostgreSQL - Lección 5 - Recibiendo datos desde múltiples tablasPostgreSQL - Lección 5 - Recibiendo datos desde múltiples tablas
PostgreSQL - Lección 5 - Recibiendo datos desde múltiples tablas
Nicola Strappazzon C.
 
PostgreSQL - Lección 3 - Usando funciones simples para manipular la salida de...
PostgreSQL - Lección 3 - Usando funciones simples para manipular la salida de...PostgreSQL - Lección 3 - Usando funciones simples para manipular la salida de...
PostgreSQL - Lección 3 - Usando funciones simples para manipular la salida de...
Nicola Strappazzon C.
 
PostgreSQL - Lección 4 - Usando funciones para manipular grupos de datos
PostgreSQL - Lección 4 - Usando funciones para manipular grupos de datosPostgreSQL - Lección 4 - Usando funciones para manipular grupos de datos
PostgreSQL - Lección 4 - Usando funciones para manipular grupos de datos
Nicola Strappazzon C.
 
Administración de bases de datos con sql server 2008 (ejemplo)
Administración de bases de datos con sql server 2008 (ejemplo)Administración de bases de datos con sql server 2008 (ejemplo)
Administración de bases de datos con sql server 2008 (ejemplo)
Ronald Huere Arias
 
Fibra optica.. marcela diapositivas
Fibra optica.. marcela diapositivasFibra optica.. marcela diapositivas
Fibra optica.. marcela diapositivas
cococoP
 

Destaque (20)

Mapa mental de los rubros que propone mcrosoft para sql
Mapa mental de los rubros que propone mcrosoft para sqlMapa mental de los rubros que propone mcrosoft para sql
Mapa mental de los rubros que propone mcrosoft para sql
 
Conceptos basicos de base de datos
Conceptos basicos de base de datosConceptos basicos de base de datos
Conceptos basicos de base de datos
 
Unid2 transact sql 1
Unid2  transact sql 1Unid2  transact sql 1
Unid2 transact sql 1
 
Teorico palabras reservada
Teorico palabras reservadaTeorico palabras reservada
Teorico palabras reservada
 
Creación Indices y Constraints en bases de datos de SQL Server
Creación Indices y Constraints en bases de datos de SQL ServerCreación Indices y Constraints en bases de datos de SQL Server
Creación Indices y Constraints en bases de datos de SQL Server
 
Cap I Plsql
Cap I PlsqlCap I Plsql
Cap I Plsql
 
Programación con sql server
Programación con sql serverProgramación con sql server
Programación con sql server
 
Migración a sql server 2008
Migración a sql server 2008Migración a sql server 2008
Migración a sql server 2008
 
Administración de proyectos de tecnologías de información
Administración de proyectos de tecnologías de informaciónAdministración de proyectos de tecnologías de información
Administración de proyectos de tecnologías de información
 
Principales funciones de excel
Principales funciones de excelPrincipales funciones de excel
Principales funciones de excel
 
PostgreSQL - Lección 2 - Restringiendo y Ordenando los Datos retornados por e...
PostgreSQL - Lección 2 - Restringiendo y Ordenando los Datos retornados por e...PostgreSQL - Lección 2 - Restringiendo y Ordenando los Datos retornados por e...
PostgreSQL - Lección 2 - Restringiendo y Ordenando los Datos retornados por e...
 
Rotación de personal
Rotación de personalRotación de personal
Rotación de personal
 
PostgreSQL - Lección 1 - Usando la sentencia SELECT
PostgreSQL - Lección 1 - Usando la sentencia SELECTPostgreSQL - Lección 1 - Usando la sentencia SELECT
PostgreSQL - Lección 1 - Usando la sentencia SELECT
 
PostgreSQL - Lección 5 - Recibiendo datos desde múltiples tablas
PostgreSQL - Lección 5 - Recibiendo datos desde múltiples tablasPostgreSQL - Lección 5 - Recibiendo datos desde múltiples tablas
PostgreSQL - Lección 5 - Recibiendo datos desde múltiples tablas
 
PostgreSQL - Lección 3 - Usando funciones simples para manipular la salida de...
PostgreSQL - Lección 3 - Usando funciones simples para manipular la salida de...PostgreSQL - Lección 3 - Usando funciones simples para manipular la salida de...
PostgreSQL - Lección 3 - Usando funciones simples para manipular la salida de...
 
PostgreSQL - Lección 4 - Usando funciones para manipular grupos de datos
PostgreSQL - Lección 4 - Usando funciones para manipular grupos de datosPostgreSQL - Lección 4 - Usando funciones para manipular grupos de datos
PostgreSQL - Lección 4 - Usando funciones para manipular grupos de datos
 
Rotación de personal
Rotación de personalRotación de personal
Rotación de personal
 
Administración de bases de datos con sql server 2008 (ejemplo)
Administración de bases de datos con sql server 2008 (ejemplo)Administración de bases de datos con sql server 2008 (ejemplo)
Administración de bases de datos con sql server 2008 (ejemplo)
 
Fibra optica.. marcela diapositivas
Fibra optica.. marcela diapositivasFibra optica.. marcela diapositivas
Fibra optica.. marcela diapositivas
 
Electronica diapositivas
Electronica diapositivasElectronica diapositivas
Electronica diapositivas
 

Semelhante a 1. introduccion a transact-sql

Investigacion Uno
Investigacion UnoInvestigacion Uno
Investigacion Uno
Roberto
 

Semelhante a 1. introduccion a transact-sql (20)

Investigacion Uno
Investigacion UnoInvestigacion Uno
Investigacion Uno
 
Tsql
TsqlTsql
Tsql
 
Tsql
TsqlTsql
Tsql
 
103305862 t-sql
103305862 t-sql103305862 t-sql
103305862 t-sql
 
t-sql
t-sqlt-sql
t-sql
 
Structured Query Language (Guía rápida)
Structured Query Language (Guía rápida)Structured Query Language (Guía rápida)
Structured Query Language (Guía rápida)
 
Comandos de Raptor,C# y Java
Comandos de Raptor,C# y JavaComandos de Raptor,C# y Java
Comandos de Raptor,C# y Java
 
Fundamentos de BD - Unidad 6 lenguaje sql
Fundamentos de BD - Unidad 6 lenguaje sqlFundamentos de BD - Unidad 6 lenguaje sql
Fundamentos de BD - Unidad 6 lenguaje sql
 
vocabulario de programacion
vocabulario de programacion vocabulario de programacion
vocabulario de programacion
 
instrucciones
instruccionesinstrucciones
instrucciones
 
Comandos de Raptor, Java y C# Sharp
Comandos de Raptor, Java y C# SharpComandos de Raptor, Java y C# Sharp
Comandos de Raptor, Java y C# Sharp
 
Lenguaje estructurado sql
Lenguaje estructurado sqlLenguaje estructurado sql
Lenguaje estructurado sql
 
SeúDocodigo
SeúDocodigoSeúDocodigo
SeúDocodigo
 
Unidad4 sql
Unidad4 sqlUnidad4 sql
Unidad4 sql
 
comandos
comandoscomandos
comandos
 
Instrucciones(raptor, java, c#)
Instrucciones(raptor, java, c#)Instrucciones(raptor, java, c#)
Instrucciones(raptor, java, c#)
 
Lenguajec intorduccionui
Lenguajec intorduccionuiLenguajec intorduccionui
Lenguajec intorduccionui
 
Fundamentos de SQL
Fundamentos de SQLFundamentos de SQL
Fundamentos de SQL
 
Sentencias Sql
Sentencias SqlSentencias Sql
Sentencias Sql
 
LENGUAJE TRANSACT SQL
 LENGUAJE TRANSACT SQL LENGUAJE TRANSACT SQL
LENGUAJE TRANSACT SQL
 

1. introduccion a transact-sql

  • 2. Introducción  E lenguaje de programación Transact-SQL  Tipos de instrucciones de Transact-SQL  Elementos de la sintaxis de Transact-SQL
  • 3. El lenguaje de programación Transact-SQL  Implementa el estándar ISO del nivel básico de la especificación ANSI SQL-92  Se pueden ejecutar desde cualquier producto que cumpla los requisitos básicos  Incluye una funcionalidad ampliada
  • 4.  Tipos de instrucciones de Transact-SQL  Instrucciones del Lenguaje de definición de datos  Instrucciones del Lenguaje de control de datos  Instrucciones del Lenguaje de tratamiento de datos
  • 5. Instrucciones del Lenguaje de definición de datos  Definen los objetos de la base de datos  CREATE nombreObjeto  ALTER nombreObjeto  DROP nombreObjeto  Deben tener los permisos adecuados USE northwind USE northwind CREATE TABLE customer CREATE TABLE customer (cust_id int, company varchar(40), (cust_id int, company varchar(40), contact varchar(30), phone char(12) ) contact varchar(30), phone char(12) ) GO GO
  • 6. Instrucciones del Lenguaje de control de datos  Establecer o cambiar los permisos  GRANT  DENY  REVOKE  Deben tener los permisos adecuados USE northwind USE northwind GRANT SELECT ON products TO public GRANT SELECT ON products TO public GO GO
  • 7. Instrucciones del Lenguaje de tratamiento de datos  Las instrucciones DML se utilizan para cambiar datos o recuperar información  SELECT  INSERT  UPDATE  DELETE  Deben tener los permisos adecuados USE northwind USE northwind SELECT categoryid, productname, productid, unitprice SELECT categoryid, productname, productid, unitprice FROM products FROM products GO GO
  • 8.  Elementos de la sintaxis de Transact-SQL  Directivas de proceso  Funciones del sistema por lotes  Operadores  Comentarios  Expresiones  Identificadores  Elementos del lenguaje  Tipos de datos de control de flujo  Variables  Palabras clave reservadas
  • 9. Directivas de proceso por lotes  GO  Envía lotes de instrucciones de Transact-SQL a las herramientas y utilidades  No se trata, realmente, de una instrucción de Transact-SQL  EXEC  Ejecuta una función definida por el usuario, un procedimiento de sistema, un procedimiento almacenado definido por el usuario o un procedimiento almacenado extendido  Controla la ejecución de una cadena de caracteres dentro de un lote de Transact-SQL
  • 10. Comentarios  Comentarios de línea Ejemplo 1 Ejemplo 1 SELECT productname SELECT productname , (unitsinstock - unitsonorder) -- Calcula el inventario , (unitsinstock - unitsonorder) -- Calcula el inventario , supplierID , supplierID FROM products FROM products GO GO  Comentarios de bloque Ejemplo 3 Ejemplo 3 /* /* Este código devuelve todas las filas de la tabla Este código devuelve todas las filas de la tabla products y muestra el precio por unidad, el precio products y muestra el precio por unidad, el precio aumentado en un 10 por ciento y el nombre del producto. aumentado en un 10 por ciento y el nombre del producto. */ */ USE northwind USE northwind SELECT unitprice, (unitprice * 1.1), productname SELECT unitprice, (unitprice * 1.1), productname FROM products FROM products GO GO
  • 11.  Identificadores  Identificadores estándar  El primer carácter debe ser un carácter alfabético  Otros caracteres pueden incluir letras, números o símbolos  Los identificadores que comienzan con un símbolo tienen usos especiales  Identificadores delimitados  Se utilizan cuando los nombres contienen espacios incrustados  Se utilizan cuando partes de los nombres incluyen palabras reservadas  Deben encerrarse entre corchetes ([ ]) o dobles comillas (" ")
  • 12. Directrices de denominación para los identificadores  Poner nombres cortos  Utilizar nombres significativos cuando sea posible  Utilizar una convención de denominación clara y sencilla  Utilizar un identificador que distinga el tipo de objeto  Vistas  Procedimientos almacenados  Hacer que los nombres de los objetos y de los usuarios sean únicos  Tabla sales y función sales
  • 13. Tipos de datos  Números  Variaciones de SQL  Fechas  Texto e imagen  Caracteres  Tablas  Binario  Cursores  Identificadores únicos  Tipos de datos definidos (GUID) por el usuario
  • 14. Variables  Variable definida por el usuario en una instrucción DECLARE @  Valores asignados con una instrucción SET o SELECT @  Las variables tienen el ámbito Local o Global USE northwind USE northwind DECLARE @EmpID varchar(11) DECLARE @EmpID varchar(11) ,@vlName char(20) ,@vlName char(20) SET @vlname = 'Dodsworth' SET @vlname = 'Dodsworth' SELECT @EmpID = employeeid SELECT @EmpID = employeeid FROM employees FROM employees WHERE LastName = @vlname WHERE LastName = @vlname SELECT @EmpID AS EmployeeID SELECT @EmpID AS EmployeeID GO GO
  • 15.  Funciones del sistema  Funciones de agregado USE northwind USE northwind SELECT AVG (unitprice) AS AvgPrice FROM products SELECT AVG (unitprice) AS AvgPrice FROM products GO GO  Funciones escalares USE northwind USE northwind SELECT DB_NAME() AS 'database‘ SELECT DB_NAME() AS 'database‘ GO GO  Funciones de conjunto de filas SELECT * SELECT * FROM OPENQUERY FROM OPENQUERY (OracleSvr, 'SELECT name, id FROM owner.titles') (OracleSvr, 'SELECT name, id FROM owner.titles')
  • 16. Ejemplos de función del sistema Ejemplo 1 SELECT SELECT 'ANSI:', CONVERT(varchar(30), GETDATE(), 102) AS 'ANSI:', CONVERT(varchar(30), GETDATE(), 102) AS Style Style UNION UNION SELECT SELECT 'Japanese:', CONVERT(varchar(30), GETDATE(), 111) 'Japanese:', CONVERT(varchar(30), GETDATE(), 111) UNION UNION SELECT SELECT 'European:', CONVERT(varchar(30), GETDATE(), 113) 'European:', CONVERT(varchar(30), GETDATE(), 113) GO GO Resultado Style Style ANSI: ANSI: 1998.03.19 1998.03.19 Japanese: Japanese: 1998/03/19 1998/03/19 European: European: 19 Mar 1998 16:34:40:616 19 Mar 1998 16:34:40:616
  • 17. Operadores  Tipos de operadores  Aritmético  Comparación  Concatenación de cadenas  Lógico  Niveles de precedencia de los operadores
  • 18. Expresiones  Combinación de símbolos y operadores  Evaluación de valores escalares simples  El tipo de datos del resultado depende de los elementos que forman la expresión SELECT OrderID, ProductID SELECT OrderID, ProductID ,(UnitPrice * Quantity) as ExtendedAmount ,(UnitPrice * Quantity) as ExtendedAmount FROM [Order Details] FROM [Order Details] WHERE (UnitPrice * Quantity) > 10000 WHERE (UnitPrice * Quantity) > 10000 GO GO
  • 19. Elementos del lenguaje de control de flujo Ejemplo 2 Ejemplo 2 DECLARE @n tinyint DECLARE @n tinyint SET @n = 5 SET @n = 5  Nivel de instrucción IF (@n BETWEEN 4 and 6) IF (@n BETWEEN 4 and 6) BEGIN BEGIN  Bloques BEGIN … END WHILE (@n > 0) WHILE (@n > 0) BEGIN BEGIN  Bloques IF … ELSE SELECT @n AS 'Number' SELECT @n AS 'Number' ,CASE ,CASE  Construcciones WHILE WHEN (@n % 2) = 1 WHEN (@n % 2) = 1 THEN ‘ODD' THEN ‘ODD' ELSE ‘EVEN'  Nivel de fila ELSE ‘EVEN' END AS 'Type' END AS 'Type' SET @n = @n - 1  CASE expresión SET @n = @n - 1 END END END END ELSE ELSE PRINT ‘NO ANALYSIS‘ PRINT ‘NO ANALYSIS‘ GO GO
  • 20. Palabras clave reservadas  Nombres de identificadores que tienen un significado especial  Palabras clave de Transact-SQL  Palabras clave ANSI SQL-92  Palabras clave reservadas de ODBC  No utilice palabras clave reservadas para nombres de identificadores