Es un sistema gestor de base de datos relacionales de Microsoft Corporation
orientado a sistemas medianos y grandes aunque también puede rodar en
ordenadores personales. SQL Server Management Studio (SSMS) es la herramienta
de SQL Server que permite definir y gestionar todas las bases de datos
almacenadas en el servidor SQL Server 2005.
Conceptos básicos de SQL
SQL (Structured Query Languaje), Lenguaje
Estructurado de Consulta
Es el lenguaje utilizado para definir,
controlar y acceder a los datos almacenados en una base de datos relacional.
Como ejemplos de sistemas gestores de bases de datos que utilizan SQL se
pueden citar DB2, SQL Server, Oracle, MySql, Sybase, PostgreSQL o Acces.
El SQL es un lenguaje universal que
se emplea en cualquier sistema gestor de base de datos relacional. Tiene un
estándar definido, a partir del cual cada sistema gestor ha desarrollado su
versión propia.
En SQL Server la versión de SQL que se utiliza se llama TRANSACT-SQL.
El SQL en principio es un lenguaje orientado únicamente a la definición y
al acceso a los datos por lo que no se puede considerar como un lenguaje de
programación como tal, ya que no incluye funcionalidades como son estructuras
condicionales, bucles, formateo de la salida, entre otros.
Se puede ejecutar directamente en modo interactivo, pero también se suele
emplear embebido en programas escritos en lenguajes de programación
convencionales. En estos programas se mezclan las instrucciones del propio
lenguaje (denominado anfitrión) con llamadas a procedimientos de acceso a la
base de datos que utilizan el SQL como lenguaje de acceso. Como por ejemplo en
Visual Basic, Java, C#, PHP, NET, entre otros.
Las instrucciones SQL se clasifican según su propósito en tres grupos:
El
DDL(Data Description Language) Lenguaje de Descripción de Datos
EL DDL, es
la parte del SQL dedicada a la definición de la base de datos, consta de
sentencias para definir la estructura de la base de datos, permiten crear la
base de datos, crear, modificar o eliminar la estructura de las tablas, crear
índices, definir reglas de validación de datos, relaciones entre tablas, entre
otros. Permite definir gran parte del nivel interno de la base de datos. Por
este motivo estas sentencias serán utilizadas normalmente por el administrador
de la base de datos.
El DCL (Data Control Language): se
compone de instrucciones que permiten:
- Ejercer un control sobre los datos tal como la asignación de privilegios
de acceso a los datos (GRANT/REVOKE).
- La gestión de transacciones (COMMIT/ROLLBACK).
Una transacción se puede definir como un conjunto de acciones que se tienen
que realizar todas o ninguna para preservar la integridad de la base de datos.
El
DML (Data Manipulation Language) Lenguaje de Manipulación de Datos
Se compone de las instrucciones para el manejo de los datos, para insertar
nuevos datos, modificar datos existentes, para eliminar datos y la mas
utilizada, para recuperar datos de la base de datos. Una sola instrucción de
recuperación de datos es tan potente que permite recuperar datos de varias
tablas a la vez, realizar cálculos sobre estos datos y obtener resúmenes.
El DML interactúa con el nivel externo de la base de datos por lo que sus
instrucciones son muy parecidas, por no decir casi idénticas, de un sistema a
otro, el usuario sólo indica lo que quiere recuperar no cómo se tiene que
recuperar, no influye el cómo están almacenados los datos.
Es el lenguaje que utilizan los programadores y los usuarios de la base de
datos.
INTRODUCCION AL TRANSACT-SQL
El sistema gestor de base de datos SQL-Server 2005 utiliza su propia
versión del lenguaje SQL, el TRANSACT-SQL.
TRANSACT-SQL es un lenguaje muy potente que nos permite definir casi
cualquier tarea que queramos efectuar sobre la base de datos. TRANSACT-SQL va
mas allá de un lenguaje SQL cualquiera, ya que incluye características propias
de cualquier lenguaje de programación, características que nos permiten definir
la lógica necesaria para el tratamiento de la información:
- Tipos de datos.
- Definición de variables.
- Estructuras de control de flujo.
- Gestión de excepciones.
- Funciones predefinidas.
Características generales del lenguaje
Transact-SQL
El lenguaje SQL se creó con la finalidad de ser un lenguaje muy potente y a
la vez muy fácil de utilizar, se ha conseguido en gran medida, ya que con una
sola frase (instrucción) se puede recuperar datos complejos (por ejemplo datos
que se encuentran en varias tablas, combinándolos, calculando resúmenes), y
utilizando un lenguaje muy cercano al lenguaje hablado.
Por ejemplo:
SELECT código, nombre
FROM Clientes WHERE localidad=’Valencia’:
Esta instrucción nos permite SELECCIONAR el código y nombre DE los Clientes
cuya localidad sea valencia.
Las sentencias SQL además siguen todo el mismo patrón:
- Empiezan por un verbo que indica la acción a realizar,
- completado por el objeto sobre el cual se quiere realizar la acción,
- seguido de una serie de clausulas (unas obligatorias, otras opcionales)
que completan la frase, y proporcionan más detalles acerca de lo que se quiere
hacer.
Tipos de datos
En SQL Server 2005, cada columna, expresión, variable y parámetro está
asociado a un tipo de datos. Un tipo de datos, es realmente define el conjunto
de valores validos para los campos definidos de ese tipo. Indica si el campo
puede contener: datos numéricos, de caracteres, moneda, fecha y hora, entre
otros.
SQL Server proporciona un conjunto de tipos de datos del sistema que define
todos los tipos de datos que pueden utilizarse.
Los tipos de datos más utilizados son:
- Los numéricos: int, decimal, Money
- Los de fecha y hora: datetime
- Y las cadenas de caracteres: varchar
Las constantes
Una constante es un valor específico o un símbolo que representa un valor
de dato especifico. El formato de las constantes depende del tipo de datos del
valor que representan.
- Las constantes numéricas se escriben mediante una cadena de números, con
la consideración de que el separador decimal es un punto, no una coma, y que si
se trata de un valor monetario deberemos incluir la moneda al inicio de la
constante. Por ejemplo: 85.90 y €85.90, el primero sería un valor decimal y el
segundo un valor money. De forma predeterminada, los valores serán positivos.
Para indicar lo contrario se escribe el signo – al principio.
- Las constantes de fecha y hora van entre comillas simples y con un
formato de fecha y hora adecuado. Por ejemplo: ‘03/10/90’.
- Y las constantes en cadenas de caracteres van entre comillas simples. Por
ejemplo: ‘Juan García López’.
Para indicar valores negativos y positivos se añade el prefijo + o – según
sea el valor positivo o negativo. Sin prefijo se entiende que el valor es
positivo.
Las expresiones
Una expresión es una combinación de símbolos y operadores que el motor de
base de datos de SQL Server evalúa para obtener un único valor. Una expresión
simple puede ser una sola constante, variable, columna o función escalar. Los
operadores se pueden usar para combinar dos o más expresiones simples y formar
una expresión compleja.
Dos expresiones pueden combinarse mediante un operador si ambas tienen
tipos de datos admitidos por el operador y se cumple al menos una de estas
condiciones:
- Las expresiones tienen el mismo tipo de datos.
- El tipo de datos de menor prioridad se puede convertir implícitamente al
tipo de datos de mayor prioridad.
- La función CAST puede convertir explícitamente el tipo de datos con menor
prioridad al tipo de datos con mayor prioridad o a un tipo de datos intermedio
que pueda convertirse implícitamente al tipo de datos con la mayor prioridad.
Tipos de operadores
- Resultados de la expresión
Si se combinan dos expresiones mediante operadores de comparación o
lógicos, el tipo de datos resultante es booleano y el valor es uno de los
siguientes: TRUE, FALSE o UNKNOWN.
Cuando dos expresiones se combinan mediante operadores aritméticos, bit a
bit o de cadena, el operador determina el tipo de datos resultante.
Las expresiones complejas formadas por varios simbolos y operadores se
evalúan como un resultado formado por un solo valor. El tipo de datos,
intercalación, precisión y valor de la expresión resultante se determina al
combinar las expresiones componentes de dos en dos, hasta que se alcanza un
resultado final. La prioridad de los operadores de la expresión define la
secuencia en que se combinan las expresiones.
Funciones
SQL Server 2005 proporciona numerosas funciones integradas y permite crear
funciones definidas por el usuario.
Existen diferentes tipos de funciones:
- Funciones de conjuntos de filas:
devuelven un objeto que se puede utilizar, en instrucciones Transact-SQL, en
lugar de una referencia una tabla.
- Funciones de agregado (también llamadas funciones de columna): Operan sobre
una colección de valores y devuelven un solo valor de resumen. Por ejemplo, la
función de suma sobre la columna importe para conocer el importe total: SUM
(importe).
- Funciones de categoría:
devuelven un valor de categoría para cada fila de un conjunto de filas, por
ejemplo: devuelve el número de la fila, el ranking de la fila en una
determinada ordenación, entre otros.
- Funciones escalares: operan
sobre un valor y después devuelven otro valor. Son las funciones que estamos
acostumbrados a utilizar. Las funciones escalares se clasifican según el tipo
de datos de sus operandos.
Las variables
En Transact-SQL podemos definir variables, que serán de un tipo de datos
determinado, como tipos de datos podemos utilizar los propios de la base de
datos SQL-SERVER, pero también se puede utilizar tipos propios del lenguaje que
no pueden ser utilizados en DDL. El tipo Cursor y el tipo Table son dos de estos
tipos.
Las variables se definen utilizando la instrucción DECLARE con el siguiente
formato:
DECLARE @nbvariable tipo
El nombre de la variable debe empezar por el símbolo @, este símbolo hace
que SQL interprete el nombre como un nombre de variable y no un nombre de
objeto de la base de datos.
Por ejemplo:
DECLARE @empleados INT
Con esto se define la variable @empleados de tipo entero.
Para asignar un valor a una variable, la asignación se realiza con la
palabra SELECT y el signo igual con el formato: SELECT @nbvariable= valor
El valor puede ser cualquier valor constante, otro nombre de variable, una
expresión valida o algo mas potente, parte de una sentencia SELECT de SQL.
Por ejemplo:
SELECT @empleados = 0;
SELECT @empleados =
@otra * 100;
SELECT @EMPLEADOS = COUNT(numero)FROM empleados;
El valor almacenado en la variable se puede visualizar mediante la orden
PRINT o SELECT
PRINT @nbvariable o
SELECT @nbvariable
Otros elementos del lenguaje
Como en cualquier otro lenguaje de programación, se debe utilizar
comentarios destinados a facilitar la legibilidad del código. En SQL se
insertan comentarios con los signos:
/* */ Varias
líneas / * Esto es un comentario en
varias líneas * /
- Una única línea - Esto es un comentario en una
única línea
Use: Cambia el contexto de la base de datos
especificada. Use nbBaseDeDatos.
GO: Es un comando reconocido por las
utilidades sqlcmd y osql, asi como por el Editor de código de SQL Server
Management Studio. Las utilidades de SQL Server interpretan GO como una señal
de que deben enviar el lote actual de instrucciones Transact-SQL a una
instancia de SQL Server. El lote actual de instrucciones está formado por todas
las instrucciones especificadas desde el último comando GO o desde el comienzo
de la sesión o script si se trata del primer comando GO.
BEGIN…END: Encierra un conjunto de instrucciones Transact-SQL de forma que estas
instrucciones formen un bloque de instrucciones.
Crear Base
de Datos en SQL Server 2005
Link de Microsoft SQL Server 2005 Express Edition:
Link de Microsoft SQL Server Management Studio Express:
http://www.microsoft.com/es-es/download/details.aspx?id=8961Para mayor información:
huevos
ResponderEliminarChinga tu madre
ResponderEliminarAAAAA no es cierto jajajaja
ResponderEliminar