Tutorial de SQL Server: todo lo que necesita para dominar Transact-SQL



Este artículo sobre el tutorial de SQL Server es una guía completa sobre los diversos conceptos, sintaxis y comandos utilizados en MS SQL Server.

En el mercado actual, donde se genera una enorme cantidad de datos todos los días, es muy importante comprender cómo manejar los datos. SQL Server es un entorno integrado desarrollado por Microsoft para manejar datos.En este artículo sobre el tutorial de SQL Server, aprenderá todas las operaciones y comandos que necesita para explorar sus bases de datos.

Para su mejor comprensión, he dividido el blog en las siguientes categorías:





Comandos Descripción

Comandos del lenguaje de definición de datos (DDL)

Este conjunto de comandos se utiliza para definir una base de datos.

Comandos de lenguaje de manipulación de datos (DML)



Los comandos de manipulación se utilizan para manipular los datos presentes en la base de datos.

Comandos de lenguaje de control de datos (DCL)

Este conjunto de comandos se ocupa de los permisos, derechos y otros controles de los sistemas de bases de datos.

Comandos de lenguaje de control de transacciones (TCL)

Estos comandos se utilizan para ocuparse de la transacción de la base de datos.

Además de los comandos, en este artículo se tratan los siguientes temas:



MS SQL Server - Tutorial de SQL Server - Edureka

  1. ¿Qué es SQL Server?
  2. Instalar SQL Server
  3. Conéctese a SQL Server usando SSMS
  4. Acceder al motor de base de datos
  5. Arquitectura de SQL Server
  6. Comentarios en SQL
  7. Tipos de datos de SQL Server
  8. Claves en la base de datos
  9. Restricciones en la base de datos
  10. Operadores
  11. Funciones agregadas
  12. Funciones definidas por el usuario
  13. Consultas anidadas
  14. Uniones
  15. Bucles
  16. Procedimientos almacenados
  17. Manejo de excepciones

***NOTA*** En este tutorial de SQL Server, consideraré la siguiente base de datos comoun ejemplo, para mostrarte cómo aprender y escribircomandos.

Identificación del Estudiante Nombre del estudiante Nombre del padre Número de teléfono Habla a Ciudad País
1odioAkriti mehra9955339966Bloque de carreteras de la brigada 9HyderabadIndia
2ManasaShourya Sharma9234568762Mayo Road 15CalcutaIndia
3AnaySoumya Mishra9876914261Casa Marathalli No 101BangaloreIndia
4PreetiRohan Sinha9765432234Queens Road 40DelhiIndia
5ShanayaAbhinay agarwal9878969068Calle Oberoi 21MumbaiIndia

Antes de comenzar a comprender los diferentes comandos utilizados en SQL Server, comprendamos qué es SQL Server, su arquitectura y cómo instalarlo.

¿Qué es SQL Server?

Microsoft SQL Server es un relacional sistema de administración de base de datos . Es compatible con Lenguaje de consulta estructurado y viene con su propia implementación del lenguaje SQL, que es el Transact-SQL (T-SQL) . Tiene un entorno integrado para manejar bases de datos SQL, que es el .

Los componentes clave de SQL Server son los siguientes:

  • Motor de base de datos: Este componente maneja el almacenamiento, el procesamiento rápido de transacciones y la protección de datos.
  • Servidor SQL - Este servicio se utiliza para iniciar, detener, pausar y continuar la instancia de MS SQL Server.
  • Agente SQL Server - El servicio del Agente de servidor desempeña el papel de programador de tareas y se activa por cualquier evento o según el requisito.
  • Explorador de SQL Server - Este servicio se utiliza para conectar la solicitud entrante a la instancia de SQL Server deseada.
  • Búsqueda de texto completo de SQL Server - Se utiliza para permitir que el usuario ejecute consultas de texto completo con los datos de caracteres en tablas SQL.
  • Escritor de VSS de SQL Server Permite copias de seguridad y restauración de archivos de datos cuando SQL Server no se ejecuta.
  • Servicios de análisis de SQL Server (SSAS) - Este servicio se utiliza para proporcionar análisis de datos, minería de datos y Capacidades SQL Server también está integrado con y R para análisis de datos avanzados.
  • Servicios de informes de SQL Server (SSRS) - Como su nombre indica, este servicio se utiliza para proporcionar funciones y capacidades de toma de decisiones, incluida la integración con .
  • Servicios de integración de SQL Server (SSIS) Este servicio se utiliza para realizar operaciones ETL para diferentes tipos de datos de múltiples fuentes de datos.

Ahora que sabe qué es MS SQL Server, avancemos en este artículo sobre el tutorial de SQL Server y entendamos cómo instalar y configurar SQL Server.

Instalar SQL Server

Siga los pasos a continuación para instalar SQL Server:

Paso 1: Ir a la página oficial de Descarga de Microsoft SQL Server , donde encontrará la opción de instalar SQL Server en las instalaciones o en la nube.

Paso 2: Ahora, desplácese hacia abajo y verá dos opciones: Edición para desarrolladores y empresas . Aquí, descargaré el Edición para desarrolladores . Para descargar, solo tienes que hacer clic en el Descargar ahora opción. Consulte a continuación.

Paso 3: Una vez descargada la aplicación, haga doble clic en el archivo y verá la siguiente ventana.

Etapa 4: Ahora, puede elegir cualquiera de las 3 opciones para configurar SQL Server. Aquí, solo elegiré el Opcion basica . Al seleccionar la opción de tipo de instalación, la siguiente pantalla sería aceptar el contrato de licencia. Para hacer eso, haga clic en Aceptar en la siguiente ventana.

Paso 5: A continuación, debe especificar la ubicación de instalación de SQL Server. Luego, debes hacer clic en Instalar.

Una vez que haces clic en Instalar en pc , verá que se están descargando los paquetes necesarios. Ahora, una vez completada la instalación, verá la siguiente pantalla:

Aquí, puede seguir adelante y hacer clic en Conectar ahora, o puede personalizar la instalación. Para su mejor comprensión, seguiré adelante y elegiré Personalizar.

Paso 6: Una vez que haces clic en Personalizar en la ventana anterior, verá que se abre el siguiente asistente. en la siguiente ventana, haga clic en Siguiente.

Paso 7: Después de que las reglas se instalen automáticamente, haga clic en Siguiente . Consulte a continuación.

Paso 8: A continuación, debe elegir el tipo de instalación. Entonces, elija el Realizar una nueva instalación de SQL Server 2017 opción y luego haga clic en Siguiente.

Paso 9: En el asistente que se abre, elija la edición: Desarrollador. Luego, haga clic en Siguiente . Consulte a continuación.

Paso 10: Ahora, lea y acepte los acuerdos de licencia marcando el botón de opción y luego haga clic en Siguiente . Consulte a continuación.

Paso 11: En el siguiente asistente, puede elegir las funciones que desea instalar. Además, puede elegir el directorio raíz de la instancia y luego hacer clic en Siguiente . Aquí, elegiré el Servicios de motor de base de datos .

Paso 12: A continuación, debe nombrar la instancia y automáticamente se creará el ID de la instancia. Aquí, nombraré la instancia “edureka”. Luego, haga clic en Siguiente.

Paso 13: En el asistente de configuración del servidor, haga clic en Siguiente .

Paso 14: Ahora, debe habilitar los modos de autenticación. Aquí, verá el Modo de autenticación de Windows y Modo mezclado . Elegiré el modo mixto. Luego, mencione la contraseña y luego agregaré el usuario actual como Administración eligiendo el Agregar usuario actual opción.

Paso 15: Luego, elija la ruta del archivo de configuración y haga clic en Instalar en pc .

Una vez completada la instalación, verá la siguiente pantalla:

Conéctese a SQL Server usando SSMS

Después de instalar SQL Server, el siguiente paso es conectar SQL Server a SQL Server Management Studio. Para hacer eso, siga los pasos a continuación:

Paso 1: Regrese a la siguiente ventana y haga clic en el instalar SSMS opción.

Paso 2: Una vez que haga clic en esa opción, será redirigido a la página siguiente , donde tienes que elegir Descarga SSMS.

Paso 3: Una vez que se haya descargado la configuración, haga doble clic en la aplicación y verá que se abre el siguiente asistente.

Etapa 4: Haga clic en Opción de instalación , en la ventana de arriba y verá que la instalación comenzará.

Paso 5: Una vez completada la instalación, aparecerá un cuadro de diálogo como se muestra a continuación.

Después de instalar el SSMS, el siguiente paso es acceder al Motor de base de datos .

Acceso al motor de base de datos

Cuando abres el Estudio de administración de servidores SQL desde el menu de inicio , se abrirá una ventana similar a la que se muestra en la imagen siguiente.

Aquí, mencione el nombre del servidor, el modo de autenticación y haga clic en Conectar.

Después de hacer clic en Conectar , Verá la siguiente pantalla.

Bueno amigos, así es como instalan y configuran SQL Server. Ahora, avanzando en este tutorial de SQL Server, comprendamos los diferentes componentes de la arquitectura de SQL Server.

Arquitectura de SQL Server

La arquitectura de SQL Server es la siguiente:

  • Servidor & menos Aquí es donde se instalan los servicios SQL y reside la base de datos
  • Motor relacional & minus Contiene el analizador de consultas, el optimizador y el ejecutor y la ejecución ocurre en el motor relacional.
  • Analizador de comandos & minus Comprueba la sintaxis de la consulta y la convierte a lenguaje de máquina.
  • Optimizador & minus Prepara el plan de ejecución como salida tomando estadísticas, consultas y árbol de Algebrator como entrada.
  • Ejecutor de consultas & menos Este es el lugar donde las consultas se ejecutan paso a paso
  • Motor de almacenamiento & menos Esto es responsable del almacenamiento y recuperación de datos en el sistema de almacenamiento, manipulación de datos, administración y bloqueo de transacciones.

Ahora que sabe cómo configurar e instalar SQL Server y sus diversos componentes, comencemos a escribir Servidor. Pero, antes de eso, permítanme cubrir cómo escribir comentarios en SQL Server.

Comentarios en SQL Server

Hay dos formas en las que puede comentar en SQL, es decir, utilice el s comentarios de una sola línea o el metro comentarios de última línea .

Comentarios de una sola línea

Los comentarios de una sola línea comienzan con dos guiones (-). Por lo tanto, el compilador ignorará el texto mencionado después de (-) hasta el final de una sola línea.

Ejemplo:

--Ejemplo de comentarios de una sola línea

Comentarios de varias líneas

Los comentarios de varias líneas comienzan con / * y terminan con */ . De ahí que el texto mencionado entre /* y */ será ignorado por el compilador.

Ejemplo:

/ * Ejemplo de comentarios de varias líneas * /

Ahora, en este artículo sobre el tutorial de SQL Server, comencemos con el primer conjunto de comandos, es decir, comandos del lenguaje de definición de datos.

Comandos del lenguaje de definición de datos

Esta sección del artículo le dará una idea sobre los comandos con la ayuda de los cuales puede definir su base de datos. Los comandos son los siguientes:

CREAR

Esta declaración se utiliza para crear una tabla, base de datos o vista.

La declaración 'CREATE DATABASE'

Esta declaración se utiliza para crear una base de datos.

Sintaxis

CREAR BASE DE DATOS Nombre de la base de datos

Ejemplo

CREAR BASE DE DATOS Estudiantes

Los ' CREAR MESA 'Declaración

Como sugiere el nombre, esta declaración se utiliza para crear una tabla.

Sintaxis

CREAR TABLA TableName (tipo de datos Columna1, tipo de datos Columna2, tipo de datos Columna3, .... Tipo de datos ColumnaN)

Ejemplo

CREAR TABLA StudentInfo (StudentID int, StudentName varchar (8000), ParentName varchar (8000), PhoneNumber int, AddressofStudent varchar (8000), Ciudad varchar (8000), Country varchar (8000))

SOLTAR

Esta declaración se utiliza para eliminar una tabla, base de datos o vista existente.

La declaración 'DROP DATABASE'

Esta declaración se utiliza para eliminar una base de datos existente. La información completa presente en la base de datos se perderá tan pronto como ejecute el siguiente comando.

Sintaxis

DROP DATABASE Nombre de la base de datos

Ejemplo

DROP DATABASE Estudiantes

La declaración 'DROP TABLE'

Esta declaración se utiliza para eliminar una tabla existente. La información completa presente en la tabla se perderá tan pronto como ejecute el siguiente comando.

Sintaxis

DROP TABLE TableName

Ejemplo

TABLA DROP StudentInfo

AÑOS

El comando ALTER se utiliza para agregar, eliminar o modificar columnas o restricciones en una tabla existente.

Los ' ALTER TABLE 'Declaración

Esta declaración se utiliza para agregar, eliminar, modificar columnas en una tabla preexistente.

La declaración 'ALTER TABLE' con ADD / DROP COLUMN

La instrucción ALTER TABLE se usa con el comando ADD / DROP Column para agregar y eliminar una columna.

Sintaxis

ALTER TABLE TableName ADD ColumnName Tipo de datos ALTER TABLE TableName DROP COLUMN ColumnName

Ejemplo

--ADD Column BloodGroup: ALTER TABLE StudentInfo ADD BloodGroup varchar (8000) --DROP Column BloodGroup: ALTER TABLE StudentInfo DROP COLUMN BloodGroup

La declaración 'ALTER TABLE' con ALTER COLUMN

La instrucción ALTER TABLE se puede utilizar con la columna ALTER para cambiar el tipo de datos de una columna existente en una tabla.

Sintaxis

ALTER TABLE TableName ALTER COLUMN ColumnName Tipo de datos

Ejemplo

: Agregue una columna DOB y cambie el tipo de datos de fecha a fecha y hora. ALTER TABLE StudentInfo AÑADIR DOB date ALTER TABLE StudentInfo ALTER COLUMN DOB datetime

TRUNCAR

Este comando SQL se utiliza para eliminar la información presente en la tabla, pero no elimina la tabla en sí. Por lo tanto, si desea eliminar la información presente en la tabla y no eliminar la tabla en sí, debe usar el comando TRUNCATE. De lo contrario, use el comando DROP.

Sintaxis

TRUNCATE TABLE TableName

Ejemplo

TABLA TRUNCATE StudentInfo

REBAUTIZAR

Esta declaración se utiliza para cambiar el nombre de una o más tablas.

Sintaxis

sp_rename 'OldTableName', 'NewTableName'

Ejemplo

sp_rename 'StudentInfo', 'Infostudents'

Continuando en este artículo sobre el tutorial de SQL Server, comprendamos los diferentes tipos de datos compatibles con SQL Server.

Tipos de datos de SQL Server

Categoría de tipo de datos Nombre del tipo de datos Descripción Rango / sintaxis
Números exactos numéricoSe utiliza para almacenar valores numéricos y tener precisión fija y números de escala.- 10 ^ 38 +1 a 10 ^ 38 - 1.
diminutoSe usa para almacenar valores enteros0 hasta 255
pequeñoSe usa para almacenar valores enteros-2 ^ 15 (-32,768) a 2 ^ 15-1 (32,767)
EmpezandoSe usa para almacenar valores enteros-2 ^ 63 (-9,223,372,036,854,775,808) a 2 ^ 63-1 (9,223,372,036,854,775,807)
En tSe usa para almacenar valores enteros-2 ^ 31 (-2,147,483,648) a 2 ^ 31-1 (2,147,483,647)
pocoAlmacena un tipo de datos entero que tiene un valor de 0, 1 o NULL0, 1 o NULO
decimalSe utiliza para almacenar valores numéricos y tener precisión fija y números de escala.- 10 ^ 38 +1 a 10 ^ 38 - 1.
poco dineroSe usa para almacenar dineroo valores monetarios.- 214,748.3648 a 214,748.3647
dineroSe usa para almacenar dineroo valores monetarios.-922,337,203,685,477.5808 a 922,337,203,685,477.5807 (-922,337,203,685,477.58
al 922,337,203,685,477.58 para Informatica.
Números aproximados flotadorSe usa para almacenar datos numéricos de punto flotante- 1.79E + 308 a -2.23E-308, 0 y 2.23E-308 a 1.79E + 308
realSe usa para almacenar datos numéricos de punto flotante- 3.40E + 38 a -1.18E - 38, 0 y 1.18E - 38 a 3.40E + 38
Fecha y hora fechaSe utiliza para definir una fecha en SQL Server.Sintaxis: fecha
pequeña fecha y horaSe utiliza para definir una fecha que se combina con una hora del día en la que la hora se basa en un día de 24 horas, con segundos siempre cero (: 00) y sin segundos fraccionarios.Sintaxis: smalldatetime
datetimeSe utiliza para definir una fecha que se combina con una hora del día con fracciones de segundo según un reloj de 24 horas.Sintaxis: fecha y hora
datetime2 datetime2 es como una extensión de lo existente datetime tipo que tiene una precisión fraccionaria predeterminada más grande, un intervalo de fechas más grande.Sintaxis: datetime2
datetimeoffsetSe utiliza para definir una fecha que se combina con una hora de un día que tiene reconocimiento de zona horaria. Se basa en un reloj de 24 horas.Sintaxis: datetimeoffset
horaSe usa para definir una hora del día.Sintaxis: tiempo
Cadenas de caracteres carbonizarseSe utiliza para almacenar caracteres de tamaño fijo.carbonizarse[ ( norte )] donde el valor n varía de 1 a 8.000
varcharSe utiliza para almacenar caracteres de longitud variable.varchar [( norte | max)] donde el valor n varía de 1 a 8000 y el almacenamiento máximo permitido es de 2 GB.
textoSe utiliza para almacenar vdatos no Unicode de longitud variableLongitud máxima de cadena permitida: 2 ^ 31-1 (2,147,483,647)
Cadenas de caracteres Unicode ncharSe utiliza para almacenar caracteres de tamaño fijo.nchar[(n)] donde el valor n varía de 1 a 4000
nvarcharSe utiliza para almacenar caracteres de longitud variable.varchar [( norte | max)] donde el valor n varía de 1 a 4000 y el almacenamiento máximo permitido es de 2 GB.
ntextSe utiliza para almacenar datos Unicode de longitud variableLongitud máxima de cadena permitida: 2 ^ 30-1 (2,147,483,647)
Cadenas binarias binarioSe utiliza para almacenar tipos de datos binarios de longitud fijabinario[ ( norte )] donde el valor n varía de 1 a 8.000
varbinarySe utiliza para almacenar tipos de datos binarios de longitud fijavarbinary[ ( norte )] donde el valor n varía de 1-8000 y el almacenamiento máximo permitido es 2 ^ 31-1 bytes.
imagenSe utiliza para almacenar datos binarios de longitud variable.0 – 2^31-1 (2,147,483,647) bytes
Otros tipos de datos Es un tipo de datos para procedimientos almacenados o parámetros de SALIDA de variables que contienen una referencia a un cursor.
rowversionSe utiliza para exponer números binarios únicos generados automáticamente dentro de una base de datos.
jerarquizadoSe utiliza para representar la posición en una jerarquía.
identificador únicoEs un GUID de 16 bytes.Sintaxis:identificador único
sql_variantSe utiliza para almacenar los valores de varios tipos de datos compatibles con SQL Server.Sintaxis: sql_variant
xmlSe utiliza para almacenar el tipo de datos XML.

xml ([CONTENIDO | DOCUMENTO] xml_schemacollection)

Tipos de geometría espacialSe utiliza para representar datos en un sistema de coordenadas euclidiano (plano).
Tipos de geografía espacialSe utiliza para almacenar datos elipsoidales (tierra redonda), como coordenadas de latitud y longitud de GPS.
mesaSe utiliza para almacenar un conjunto de resultados para su procesamiento en un momento posterior.

A continuación, en este artículo, entendamos los diferentes tipos de claves y restricciones en la base de datos.

Diferentes tipos de claves en la base de datos

Los siguientes son los diferentes tipos de claves que se utilizan en la base de datos:

  • Llave candidata - La clave candidata es un conjunto de atributos que pueden identificar de forma única una tabla. Una tabla puede tener más de una clave candidata y, de las claves candidatas elegidas, se elige una clave como clave principal.
  • Super llave - El conjunto de atributos puede identificar de forma única una tupla. Entonces, las claves candidatas, las claves únicas y las claves primarias son súper claves, pero lo contrario no es cierto.
  • Clave primaria - Claves primarias se utilizan para identificar de forma única cada tupla.
  • Clave alternativa - Las claves alternativas son aquellas claves candidatas que no se eligen como clave principal.
  • Llave unica Las claves únicas son similares a la clave principal, pero permiten un único valor NULL en la columna.
  • Clave externa - Un atributo que solo puede tomar los valores presentes como valores de algún otro atributo, es el clave externa al atributo al que se refiere.
  • Clave compuesta Las claves compuestas son una combinación de dos o más columnas que identifican cada tupla de forma única.

Restricciones utilizadas en la base de datos

Las restricciones se utilizan en una base de datos para especificar las reglas para los datos almacenados en una tabla. Los diferentes tipos de restricciones en SQL son como sigue:

NO NULO

La restricción NOT NULL asegura que una columna no pueda tener un valor NULL.

Ejemplo

CREAR TABLA StudentsInfo (StudentID int NOT NULL, StudentName varchar (8000) NOT NULL, ParentName varchar (8000), PhoneNumber int, AddressofStudent varchar (8000) NOT NULL, City varchar (8000), Country varchar (8000)) --NOT NULL en ALTER TABLE ALTER TABLE EstudiantesInfo ALTER COLUMN PhoneNumber int NOT NULL

ÚNICO

Esta restricción asegura que todos los valores de una columna sean únicos.

Ejemplo

--UNIQUE on Create Table CREATE TABLE StudentsInfo (StudentID int NOT NULL UNIQUE, StudentName varchar (8000) NOT NULL, ParentName varchar (8000), PhoneNumber int, AddressofStudent varchar (8000) NOT NULL, Ciudad varchar (8000), País varchar ( 8000)) - ÚNICO en varias columnas CREAR TABLA StudentsInfo (StudentID int NOT NULL, StudentName varchar (8000) NOT NULL, ParentName varchar (8000), PhoneNumber int, AddressofStudent varchar (8000) NOT NULL, Ciudad varchar (8000), País varchar (8000) CONSTRAINT UC_Student_Info UNIQUE (StudentID, PhoneNumber)) --ÚNICO en ALTER TABLE ALTER TABLE StudentsInfo ADD UNIQUE (StudentID) --Para eliminar una restricción ÚNICA ALTER TABLE StudentsInfo DROP RESTRING UC_Student_Info

CHEQUE

La restricción CHECK asegura que todos los valores de una columna satisfagan una condición específica.

Ejemplo

--CHECK Restraint on CREATE TABLE CREATE TABLE StudentsInfo (StudentID int NOT NULL, StudentName varchar (8000) NOT NULL, ParentName varchar (8000), PhoneNumber int, AddressofStudent varchar (8000) NOT NULL, Ciudad varchar (8000), País varchar ( 8000) CHECK (Country = 'India')) --CHECK Restricción en varias columnas CREATE TABLE StudentsInfo (StudentID int NOT NULL, StudentName varchar8000) NOT NULL, ParentName varchar (8000), PhoneNumber int, AddressofStudent varchar (8000) NOT NULL, Ciudad varchar (8000), País varchar (8000) CHECK (Country = 'India' AND City = 'Hyderabad')) --CHECK Restricción en ALTER TABLE ALTER TABLE StudentsInfo ADD CHECK (Country = 'India') --Para dar una nombre a la restricción CHECK ALTER TABLE StudentsInfo AGREGAR RESTRICCIÓN CheckConstraintName CHECK (Country = 'India') --Para eliminar una restricción CHECK ALTER TABLE Información de estudiantes DROP RESTRINGIR CheckConstraintName

cómo implementar un mapa hash

DEFECTO

La restricción DEFAULT consiste en un conjunto de valores predeterminados para una columna cuando no se especifica ningún valor.

Ejemplo

--DEFAULT Constraint on CREATE TABLE CREATE TABLE StudentsInfo (StudentID int, StudentName varchar (8000) NOT NULL, ParentName varchar (8000), PhoneNumber int, AddressofStudent varchar (8000) NOT NULL, Ciudad varchar (8000), País varchar (8000) DEFAULT 'India') --DEFAULT Constraint on ALTER TABLE ALTER TABLE StudentsInfo ADD CONSTRAINT defau_Country DEFAULT 'India' FOR Country --Para eliminar la restricción predeterminada ALTER TABLE StudentsInfo ALTER COLUMN Country DROP defau_Country

ÍNDICE

los Restricción INDEX se utiliza para crear índices en la tabla, a través de los cuales puede crear y recuperar datos de la base de datos muy rápidamente.

Sintaxis

--Crear un índice donde se permitan valores duplicados CREAR ÍNDICE IndexName ON TableName (Columna1, Columna2, ... ColumnN) --Crear un índice donde no se permiten valores duplicados CREAR ÍNDICE ÚNICO IndexName ON TableName (Columna1, Columna2, ... ColumnaN)

Ejemplo

CREATE INDEX idex_StudentName ON StudentsInfo (StudentName): para eliminar un índice en una tabla DROP INDEX StudentsInfo.idex_StudentName

Avanzando en este artículo sobre el tutorial de SQL Server, comprendamos ahora los diferentes comandos del lenguaje de manipulación de datos que se utilizan en Microsoft SQL Server.

Comandos del lenguaje de manipulación de datos

Esta sección del artículo cubrirá todos aquellos comandos a través de los cuales puede manipular la base de datos. Los comandos son los siguientes:

Aparte de estos comandos, también hay otros operadores / funciones de manipulación como:

UTILIZAR

Esta declaración se utiliza para seleccionar la base de datos para comenzar a realizar varias operaciones en ella.

Sintaxis

USE DatabaseName

Ejemplo

USE Estudiantes

INSERTAR EN

los INSERT INTO declaración se utiliza para insertar nuevos registros en una tabla existente.

Sintaxis

INSERT INTO TableName (Column1, Column2, Column3, ..., ColumnN) VALUES (value1, value2, value3, ...) --Si no desea mencionar los nombres de las columnas, utilice la siguiente sintaxis INSERT INTO TableName VALUES (Valor1, Valor2, Valor3, ...)

Ejemplo

INSERT INTO StudentsInfo (StudentID, StudentName, ParentName, PhoneNumber, AddressofStudent, City, Country) VALUES ('06', 'Sanjana', 'Kapoor', '9977331199', 'Buffalo Street House No 10', 'Kolkata', 'India ') INSERT INTO StudentsInfo VALUES (' 07 ',' Vishal ',' Mishra ',' 9876509712 ',' Nice Road 15 ',' Pune ',' India ')

ACTUALIZAR

La instrucción UPDATE se utiliza para modificar o actualizar los registros que ya están presentes en la tabla.

Sintaxis

ACTUALIZAR TableName SET Column1 = Value1, Column2 = Value2, ... WHERE Condición

Ejemplo

ACTUALIZAR StudentsInfo SET StudentName = 'Aahana', Ciudad = 'Ahmedabad' DONDE StudentID = 1

ELIMINAR

La instrucción DELETE se utiliza para eliminar los registros existentes en una tabla.

Sintaxis

BORRAR DE TableName WHERE Condición

Ejemplo

BORRAR DE StudentsInfo DONDE StudentName = 'Aahana'

VAMOS

La instrucción MERGE se utiliza para realizar las operaciones INSERT, UPDATE y DELETE en una tabla específica, donde se proporciona la tabla fuente. Consulte a continuación.

Sintaxis

FUSIONAR TagretTableName USANDO SourceTableName ON MergeCondition CUANDO COINCIDOS ENTONCES Update_Statement CUANDO NO COINCIDOS ENTONCES Insert_Statement CUANDO NO COINCIDOS POR SOURCE THEN DELETE

Ejemplo

Para comprender la instrucción MERGE, considere las siguientes tablas como la tabla de origen y la tabla de destino.

Tabla de origen:

Identificación del Estudiante Nombre del estudiante Marcas
1odio87
2Manasa92
4Anay74

Tabla de destino:

Identificación del Estudiante Nombre del estudiante Marcas
1odio87
2Manasa67
3Saurabh55
FUSIONAR SampleTargetTable TARGET USANDO SampleSourceTable SOURCE ON (TARGET.StudentID = SOURCE.StudentID) CUANDO SE COINCIDAN Y TARGET.StudentName SOURCE.StudentName O TARGET.Marks SOURCE.Marks LUEGO ACTUALIZAR SET = SOURCE.StudentMarks, TARGET.StudentName = SOURCE.StudentMarks. CUANDO NO COINCIDAN POR OBJETIVO ENTONCES INSERTAR (StudentID, StudentName, Marks) VALORES (SOURCE.StudentID, SOURCE.StudentName, SOURCE.Marks) CUANDO NO COINCIDEN POR SOURCE LUEGO BORRAR

Salida

Identificación del Estudiante Nombre del estudiante Marcas
1odio87
2Manasa92
4Anay74

SELECCIONE

los Instrucción SELECT se utiliza para seleccionar datos de una base de datos, tabla o vista. Los datos devueltos se almacenan en una tabla de resultados, denominada conjunto resultante .

Sintaxis

SELECT Columna1, Columna2, ... ColumN FROM TableName - (*) se usa para seleccionar todo de la tabla SELECT * FROM table_name - Para seleccionar el número de registros para devolver use: SELECT TOP 3 * FROM TableName

Ejemplo

- Para seleccionar algunas columnas SELECT StudentID, StudentName FROM StudentsInfo - (*) se usa para seleccionar todo de la tabla SELECT * FROM StudentsInfo - Para seleccionar el número de registros para devolver use: SELECT TOP 3 * FROM StudentsInfo

También podemos usar las siguientes palabras clave con la instrucción SELECT:

DISTINTO

La palabra clave DISTINCT se usa con la instrucción SELECT para devolver solo valores diferentes.

Sintaxis

SELECCIONE DISTINCT Column1, Column2, ... ColumnN FROM TableName

Ejemplo

SELECCIONE NÚMERO DE TELÉFONO DISTINTO DE StudentsInfo

PEDIR POR

Esta declaración se utiliza para clasificar los resultados requeridos en orden ascendente o descendente. De forma predeterminada, los resultados se almacenan en orden ascendente. Sin embargo, si desea obtener los resultados en orden descendente, debe utilizar el DESC palabra clave.

Sintaxis

SELECT Column1, Column2, ... ColumnN FROM TableName ORDER BY Column1, Column2, ... ASC | DESC

Ejemplo

- Seleccione todos los estudiantes de la tabla 'StudentsInfo' ordenados por ParentName: SELECT * FROM StudentsInfo ORDER BY ParentName - Seleccione todos los estudiantes de la tabla 'StudentsInfo' ordenados por ParentName en orden descendente: SELECT * FROM StudentsInfo ORDER BY ParentName DESC - Seleccione todos los estudiantes de la tabla 'StudentsInfo' ordenados por ParentName y StudentName: SELECT * FROM StudentsInfo ORDER BY ParentName, StudentName / * Seleccione todos los estudiantes de la tabla 'StudentsInfo' ordenados por ParentName en orden descendente y StudentName en orden ascendente: * / SELECT * DE StudentsInfo ORDER BY ParentName ASC, StudentName DESC

AGRUPAR POR

Esta declaración se usa con el Funciones agregadas para agrupar el conjunto de resultados por una o más columnas.

Sintaxis

SELECCIONE Columna1, Columna2, ..., ColumnaN DE NombreTabla DONDE Condición AGRUPAR POR Nombre (s) de columna ORDENAR POR Nombre (s) de columna

Ejemplo

- Enumerar el número de estudiantes de cada ciudad. SELECCIONAR COUNT (StudentID), ciudad FROM StudentsInfo GRUPO POR ciudad

CONJUNTOS DE AGRUPACIÓN

LOS CONJUNTOS DE AGRUPACIÓN se introdujeron en SQL Server 2008, y se utilizan para generar un conjunto de resultados que puede UNIÓN TODOS de las múltiples cláusulas GROUP BY simples.

Sintaxis

SELECCIONAR ColumnNames (s) DE TableName GROUP POR GRUPO DE CONJUNTOS (ColumnName (s))

Ejemplo

SELECCIONE StudentID, StudentName, COUNT (City) from StudentsInfo Group POR CONJUNTOS DE AGRUPACIÓN ((StudentID, StudentName, City), (StudentID), (StudentName), (City))

TENIENDO

Esta cláusula se utiliza en el escenario donde el DONDE palabra clave No puede ser usado.

Sintaxis

SELECCIONE Nombre (s) de columna de TableName DONDE Condición AGRUPAR POR Nombre (s) de columna TENIENDO Condición ORDEN POR Nombre (s) de columna

Ejemplo

SELECCIONE COUNT (StudentID), ciudad FROM StudentsInfo GRUPO POR ciudad TENIENDO COUNT (StudentID)> 2 ORDEN POR COUNT (StudentID) DESC

DENTRO

La palabra clave INTO se puede utilizar con el Instrucción SELECT para copiar datos de una tabla a otra. Bueno, puedes entender que estas tablas son tablas temporales. Las tablas temporales se utilizan generalmente para realizar manipulaciones sobre los datos presentes en la tabla, sin alterar la tabla original.

Sintaxis

SELECCIONE * INTO NewTable [IN ExternalDB] FROM OldTable WHERE Condición

Ejemplo

- Para crear una copia de seguridad de la tabla 'StudentsInfo' SELECT * INTO StudentsBackup FROM StudentsInfo --Para seleccionar solo algunas columnas de StudentsInfo SELECT StudentName, PhoneNumber INTO StudentsDetails FROM StudentsInfo SELECT * INTO PuneStudents FROM StudentsInfo WHERE City = 'Pune'

CUBO

CUBE es una extensión del Cláusula GROUP BY . Le permite generar los subtotales para todas las combinaciones de las columnas de agrupación especificadas en la cláusula GROUP BY.

Sintaxis

SELECT ColumnName (s) FROM TableName GROUP BY CUBE (ColumnName1, ColumnName2, ....., ColumnNameN)

Ejemplo

SELECCIONE StudentID, COUNT (Ciudad) FROM StudentsInfo GRUPO POR CUBO (StudentID) ORDEN POR StudentID

ENROLLAR

ROLLUP es una extensión de la cláusula GROUP BY. Esto le permite incluir las filas adicionales que representan los subtotales. Estos se denominan filas superegregadas junto con la fila total general.

Sintaxis

SELECT ColumnName (s) FROM TableName GROUP BY ROLLUP (ColumnName1, ColumnName2, ....., ColumnNameN)

Ejemplo

SELECCIONE StudentID, COUNT (Ciudad) FROM StudentsInfo GRUPO POR ROLLUP (StudentID)

COMPENSAR

La cláusula OFFSET se usa con SELECT y Instrucción ORDER BY para recuperar una variedad de registros. Debe usarse con la cláusula ORDER BY ya que no se puede usar por sí solo. Además, el rango que mencione debe ser igual o mayor que 0. Si menciona un valor negativo, entonces muestra un error.

Sintaxis

SELECT ColumnNames) FROM TableName WHERE Condición ORDER BY ColumnName (s) OFFSET RowsToSkip ROWS

Ejemplo

Considere una nueva columna Marcas en el EstudiantesInfo mesa.

SELECCIONE StudentName, ParentName FROM StudentsInfo ORDEN POR MARCAS DESPLAZAMIENTO 1 FILAS

IR A BUSCAR

La cláusula FETCH se usa para devolver un conjunto de varias filas. Tiene que utilizarse junto con la cláusula OFFSET.

Sintaxis

SELECT ColumnNames) FROM TableName WHERE Condición ORDER BY ColumnName (s) OFFSET RowsToSkip FETCH NEXT NumberOfRows ROWS ONLY

Ejemplo

SELECCIONE StudentName, ParentName FROM StudentsInfo ORDENAR POR Marcas DESPLAZAMIENTO 1 FILAS BUSCAR SIGUIENTE 1 FILAS SOLAMENTE

PARTE SUPERIOR

La cláusula TOP se usa con la instrucción SELECT para mencionar el número de registros a devolver.

Sintaxis

SELECCIONAR NÚMERO SUPERIOR Nombre (s) de columna de TableName WHERE Condición

Ejemplo

SELECCIONE LOS 3 PRINCIPALES * DE StudentsInfo

PIVOTE

PIVOT se utiliza para rotar las filas a valores de columna y ejecuta agregaciones cuando es necesario en los valores de columna restantes.

Sintaxis

SELECT NonPivoted ColumnName, [First Pivoted ColumnName] AS ColumnName, [Second Pivoted ColumnName] AS ColumnName, [Third Pivoted ColumnName] AS ColumnName, ... [Last Pivoted ColumnName] AS ColumnName FROM (SELECT consulta que produce los datos) AS [alias para la consulta inicial] PIVOT ([AggregationFunction] (ColumName) FOR [ColumnName de la columna cuyos valores se convertirán en encabezados de columna] IN ([First Pivoted ColumnName], [Second Pivoted ColumnName], [Third Pivoted ColumnName] ... [last columna dinámica])) AS [alias de la tabla dinámica]

Ejemplo

Para obtener un ejemplo detallado, puede consultar mi artículo sobre SQL PIVOT y UNPIVOT . A continuación, en este tutorial de SQL Server, veamos los diferentes operadores admitidos por Microsoft SQL Server.

Operadores

los diferentes tipos de operadores soportado por SQL Server son los siguientes:

Analicemos cada uno de ellos uno por uno.

Operadores aritméticos

Operador Sentido Sintaxis

+

Adición

expresión + expresión

Sustracción

expresión - expresión

*

Multiplicación

expresión * expresión

/

División

programa de búsqueda binaria en java

expresión / expresión

%

Modulous

expresión% expresión

Operadores de Asignación

Operador Sentido Sintaxis

=

Asignar un valor a una variable

variable = 'valor'

Operadores bit a bit

Operador Sentido Sintaxis

& (Bit a bit AND)

Se utiliza para realizar una operación AND lógica bit a bit entre dos valores enteros.

expresión y expresión

& = (Asignación AND bit a bit)

Se utiliza para realizar una operación AND lógica bit a bit entre dos valores enteros. También establece un valor para la salida de la operación.

expresión & = expresión

| (OR bit a bit)

Se utiliza para realizar una operación OR lógica bit a bit entre dos valores enteros traducidos a expresiones binarias dentro de las instrucciones Transact-SQL.

expresión | expresión

| = (Asignación OR bit a bit)

Se utiliza para realizar una operación OR lógica bit a bit entre dos valores enteros traducidos a expresiones binarias dentro de las instrucciones Transact-SQL. También establece un valor para la salida de la operación.

expresión | = expresión

^ (OR exclusivo bit a bit)

Se utiliza para realizar una operación OR exclusiva bit a bit entre dos valores enteros.

expresión ^ expresión

^ = (Asignación OR exclusiva bit a bit)

Se utiliza para realizar una operación OR exclusiva bit a bit entre dos valores enteros. También establece un valor para la salida de la operación.

expresión ^ = expresión

~ (Bit a bit NO)

Se utiliza para realizar una operación NOT lógica bit a bit en un valor entero.

~ expresión

Operadores de comparación

Operador Sentido Sintaxis

=

Igual a

expresión = expresión

>

Mas grande que

expresión> expresión

<

Menos que

expresión

>=

Mayor qué o igual a

expresión> = expresión

<=

Menos que o igual a

expresión<= expression

No igual a

expresión expresión

!=

No igual a

expresión! = expresión

!<

No menos que

expresión !

!>

No mayor que

expresión!> expresión

Operadores compuestos

Operador Sentido Sintaxis

+ =

Se utiliza para agregar valor al valor original y establecer el valor original en el resultado.

expresión + = expresión

-=

Se utiliza para restar un valor del valor original y establecer el valor original en el resultado.

expresión - = expresión

*=

Se utiliza para multiplicar el valor por el valor original y establecer el valor original en el resultado.

expresión * = expresión

/=

Se utiliza para dividir un valor del valor original y establecer el valor original en el resultado.

expresión / = expresión

%=

Se utiliza para dividir un valor del valor original y establecer el valor original en el resultado.

expresión% = expresión

&=

Se utiliza para realizar una operación AND bit a bit y establecer el valor original en el resultado.

expresión & = expresión

^=

Se utiliza para realizar una operación OR exclusiva bit a bit y establecer el valor original en el resultado.

expresión ^ = expresión

|=

Se utiliza para realizar una operación OR bit a bit y establecer el valor original en el resultado.

expresión | = expresión

Operadores logicos

Operador Sentido Sintaxis

TODOS

Devuelve VERDADERO si todo el conjunto de comparaciones es VERDADERO.

expresión_escalar! = TODO (subconsulta)

Y

Devuelve VERDADERO si ambas expresiones son VERDADERAS.

expresión_booleana Y expresión_booleana

NINGUNA

Devuelve VERDADERO si cualquiera de un conjunto de comparaciones es VERDADERO.

scalar_expression! = {CUALQUIER} (subconsulta)

ENTRE

Devuelve VERDADERO si un operando está dentro de un rango.

sampleexpression [NOT] BETWEEN beginexpression AND endexpression

EXISTE

Devuelve VERDADERO si una subconsulta contiene filas.

EXISTE (subconsulta)

EN

Devuelve VERDADERO si un operando es igual a uno de una lista de expresiones.

test_expression [NOT] IN (subconsulta | expresión [,… n])

ME GUSTA

Devuelve VERDADERO si un operando coincide con un patrón.

match_expression [NO] LIKE patrón [ESCAPE escape_character]

NO

Invierte el valor de cualquier operador booleano.

[NO] expresión_booleana

O

Devuelve VERDADERO si alguna de las expresiones booleanas es VERDADERO.

expresión_booleana O expresión_booleana

ALGUNOS

Devuelve VERDADERO si algunas comparaciones de un conjunto son VERDADERAS.

expresión_escalar<= { SOME} ( subquery )

Operadores de resolución de alcance

Operador Sentido Ejemplo

::

Proporciona acceso a miembros estáticos de un tipo de datos compuestos. Los tipos de datos compuestos son aquellos tipos de datos que contienen múltiples métodos y tipos de datos simples. Tipos de datos compuestos Estos incluyen los tipos CLR incorporados y los tipos definidos por el usuario (UDT) SQLCLR personalizados.

DECLARAR @hid jerarquías SELECCIONAR @hid = jerarquías :: GetRoot () PRINT @ hid.ToString ()

Establecer operadores

Hay principalmente tres operaciones de conjuntos:UNIÓN,INTERSECARSE,MENOS. Puede consultar la imagen a continuación para comprender las operaciones de conjunto en SQL. Consulte la siguiente imagen:

Operador Sentido Sintaxis

UNIÓN

El operador UNION se utiliza para combinar el conjunto de resultados de dos o más sentencias SELECT.

SELECCIONAR Nombre (s) de columna de Table1
UNIÓN
SELECCIONAR Nombre (s) de columna de Table2

INTERSECARSE

La cláusula INTERSECT se utiliza para combinar dosSELECCIONEdeclaraciones y devuelve la intersección de los conjuntos de datos de ambas declaraciones SELECT.

SELECCIONE Columna1, Columna2….
FROM TableName
DONDE Condición
INTERSECARSE
SELECCIONE Columna1, Columna2….
FROM TableName
DONDE Condición

EXCEPTO

El operador EXCEPT devuelve las tuplas que devuelve la primera operación SELECT y no las devuelve la segunda operación SELECT.

SELECT ColumnName
FROM TableName
EXCEPTO
SELECT ColumnName
FROM TableName

Operadores de cadenas

Operador Sentido Sintaxis / Ejemplo

+ (Concatenación de cadenas)

Concatena dos o más cadenas de caracteres o binarios, columnas o una combinación de cadenas y nombres de columnas en una sola expresión

expresión + expresión

+ = (Concatenación de cadenas)

Se utiliza para concatenar dos cadenas y establece la cadena en el resultado de la operación.

expresión + = expresión

% (Caracteres comodín para coincidir)

Se utiliza para coincidir con cualquier cadena de cero o más caracteres.

Ejemplo: '% de muestra'

[] (Caracteres comodín para coincidir)

Se utiliza para hacer coincidir un solo carácter dentro del rango especificado o conjunto que se especifica entre corchetes [].

Ejemplo: m [n-z]% ’

[^] (Caracteres comodín para coincidir)

Se utiliza para hacer coincidir un solo carácter que no está dentro del rango o conjunto especificado entre corchetes.

Ejemplo: 'Al [^ a]%'

_ (Caracteres comodín para coincidir)

Se usa para hacer coincidir un solo carácter en una operación de comparación de cadenas

test_expression [NOT] IN (subconsulta | expresión [,… n])

Agregar Funciones

Lo diferente Funciones agregadas soportado por SQL Server son los siguientes:

Función Descripción Sintaxis Ejemplo

SUMA()

Se usa para devolver la suma de un grupo de valores.

SELECCIONAR SUM (ColumnName) FROM TableName

SELECCIONE SUM (Marcas) DE StudentsInfo

CONTAR()

Devuelve el número de filas según una condición o sin ella.

SELECCIONE COUNT (ColumnName) FROM TableName WHERE Condición

SELECCIONAR COUNT (StudentID) DE StudentsInfo

AVG ()

Se utiliza para calcular el valor medio de una columna numérica.

SELECCIONE AVG (ColumnName) FROM TableName

SELECCIONE PROMEDIO (Marcas) de StudentsInfo

MIN ()

Esta función devuelve el valor mínimo de una columna.

SELECCIONAR MIN (ColumnName) FROM TableName

SELECCIONE MIN (Marcas) DE StudentsInfo

MAX ()

Devuelve un valor máximo de una columna.

SELECCIONAR MAX (ColumnName) FROM TableName

SELECCIONE MAX (Marks) FROM StudentsInfo

PRIMERO()

Se usa para devolver el primer valor de la columna.

SELECCIONE PRIMERO (ColumnName) DE TableName

SELECCIONE PRIMERO (Marcas) DE StudentsInfo

ÚLTIMO()

Esta función devuelve el último valor de la columna.

SELECCIONAR ÚLTIMO (ColumnName) FROM TableName

SELECCIONE LAST (Marcas) DE StudentsInfo

Funciones definidas por el usuario

Microsoft SQL Server permite a los usuarios crear funciones definidas por el usuario que son rutinas. Estas rutinas aceptan parámetros, pueden realizar acciones simples a complejas y devolver el resultado de esa acción en particular como un valor. Aquí, el valor devuelto puede ser un solo valor escalar o un conjunto de resultados completo.

Puede utilizar funciones definidas por el usuario para:

  • Permitir la programación modular
  • Reducir el tráfico de la red
  • Permitir una ejecución más rápida de consultas

Además, existen diferentes tipos de funciones definidas por el usuario que puede crear. Son:

  • Funciones escalares: Acostumbrado adevuelve un único valor de datos del tipo definido en la cláusula RETURNS.
  • Funciones con valores de tabla: Acostumbrado adevolver unmesatipo de datos.
  • Funciones del sistema: SQL Server proporciona una variedad de funciones del sistema para realizar diferentes operaciones.

Bueno, además de las funciones definidas por el usuario, hay un montón de funciones integradas en SQL Server que se pueden usar para realizar una variedad de tareas. Continuando en este artículo sobre el tutorial de SQL Server, entendamos ahora qué son las consultas anidadas.

Consultas anidadas

Consultas anidadas son aquellas consultas que tienen una consulta externa y una subconsulta interna. Entonces, básicamente, la subconsulta es una consulta que está anidada dentro de otra consulta como SELECT, INSERT, UPDATE o DELETE. Consulte la imagen a continuación:

A continuación, en este tutorial de SQL Server, comprendamos los diferentes tipos de combinaciones en SQL.

Uniones

se utilizan para combinar tuplas de dos o más tablas, basándose en una columna relacionada entre las tablas. Hay cuatro tipos de combinaciones:

  • UNIR INTERNAMENTE: Devuelve registros que tienen valores coincidentes en ambas tablas.
  • ÚNETE A LA IZQUIERDA: Devuelve los registros de la tabla de la izquierda y también los registros que cumplen la condición de la tabla de la derecha.
  • UNIRSE CORRECTAMENTE: Devuelve los registros de la tabla de la derecha y también los registros que cumplen la condición de la tabla de la izquierda.
  • ÚNETE COMPLETO: Devuelve registros que tienen una coincidencia en la tabla izquierda o derecha.

Considere la siguiente tabla junto con la tabla StudentsInfo para comprender la sintaxis de las combinaciones.

SubjectID Identificación del Estudiante Nombre del tema
1010Matemáticas
211Física
312Química

UNIR INTERNAMENTE

Sintaxis

SELECCIONAR Nombre (s) de columna DESDE Table1 INNER JOIN Table2 ON Table1.ColumnName = Table2.ColumnName

Ejemplo

SELECT Subjects.SubjectID, StudentsInfo.StudentName FROM Subjects INNER JOIN StudentsInfo ON Subjects.StudentID = StudentsInfo.StudentID

ÚNETE A LA IZQUIERDA

Sintaxis

SELECCIONAR Nombre (s) de columna DESDE Table1 LEFT JOIN Table2 ON Table1.ColumnName = Table2.ColumnName

Ejemplo

SELECT StudentsInfo.StudentName, Subjects.SubjectID FROM StudentsInfo LEFT JOIN Subjects ON StudentsInfo.SubjectID = Subjects.SubjectID ORDER BY StudentsInfo.StudentName

UNIRSE CORRECTAMENTE

Sintaxis

SELECCIONAR Nombre (s) de columna DESDE Table1 RIGHT JOIN Table2 ON Table1.ColumnName = Table2.ColumnName

Ejemplo

SELECCIONE StudentsInfo.StudentName, Subjects.SubjectID FROM StudentsInfo DERECHA UNIR a Subjects ON StudentsInfo.SubjectID = Subjects.SubjectID ORDER BY StudentsInfo.StudentName

ÚNETE COMPLETO

Sintaxis

SELECCIONAR Nombre (s) de columna DESDE Table1 FULL OUTER JOIN Table2 ON Table1.ColumnName = Table2.ColumnName

Ejemplo

SELECT StudentsInfo.StudentName, Subjects.SubjectID FROM StudentsInfo FULL OUTER JOIN Subjects ON StudentsInfo.SubjectID = Subjects.SubjectID ORDER BY StudentsInfo.StudentName

A continuación, en este artículo sobre el tutorial de SQL Server, comprendamos los diferentes tipos de bucles que admite SQL Server.

Bucles

Los diferentes comandos de control de flujo son los siguientes:

Analicemos cada uno de ellos uno por uno.

COMIENZO .. FIN

Estas palabras clave se utilizan para incluir una serie de sentencias SQL. Entonces, este grupo de sentencias SQL se puede ejecutar.

Sintaxis

php cómo imprimir matriz
BEGIN StatementBlock END

DESCANSO

Esta declaración se utiliza para salir del bucle WHILE actual. En caso de que el bucle WHILE actual esté anidado dentro de otro bucle, entonces la instrucción BREAK sale solo del bucle actual y el control pasa a la siguiente instrucción en el bucle actual. La instrucción BREAK se usa generalmente dentro de una instrucción IF.

Sintaxis

DESCANSO

SEGUIR

La instrucción CONTINUE se usa para reiniciar un ciclo WHILE. Por lo tanto, se ignorará cualquier declaración después de la palabra clave CONTINUE.

Sintaxis

SEGUIR

Aquí, Etiqueta es el punto después del cual comienza el procesamiento si un GOTO está dirigido a esa etiqueta en particular.

IR

Se usa para alterar el flujo de ejecución de una etiqueta. Las declaraciones escritas después de la palabra clave GOTO se omiten y el procesamiento continúa en la etiqueta.

Sintaxis

Definir etiqueta: Etiqueta: Modificar ejecución: GOTO Etiqueta

Aquí, Etiqueta es el punto después del cual comienza el procesamiento si un GOTO está dirigido a esa etiqueta en particular.

SI ... SI NO

Como cualquier otro lenguaje de programación, la instrucción If-else en SQL Server prueba la condición y si la condición es falsa, se ejecuta la instrucción 'else'.

Sintaxis

IF BooleanExpression StatementBlock [ELSE StatementBlock]

REGRESO

Se utiliza para salir incondicionalmente de una consulta o procedimiento. Por lo tanto, las declaraciones que se escriben después de la cláusula RETURN no se ejecutan.

Sintaxis

VOLVER [IntegerExpression]

Aquí, se devuelve un valor entero.

ESPERA

El flujo de control WAITFOR se usa para bloquear la ejecución de un procedimiento almacenado, transacción o lote hasta que una declaración específica se modifica, devuelve al menos una fila o transcurre un tiempo o intervalo de tiempo especificado.

Sintaxis

WAITFOR (GetConversionGroupStatement)] [, tiempo de espera de TIMEOUT]

dónde,

  • RETRASAR - Periodo de tiempo que debe transcurrir
  • TimeToPass - PAGSeriodo de tiempo para esperar
  • HORA - Loshora en que se ejecuta el procedimiento almacenado, la transacción o el lote.
  • TimeToExecute - Loshora a la que finaliza la instrucción WAITFOR.
  • RecieveStatement – Adeclaración RECEIVE válida.
  • GetConversionGroupStatement – Ainstrucción GET CONVERSATION GROUP válida.
  • TIMEOUT tiempo de espera Especifica el período de tiempo, en milisegundos, para esperar a que llegue un mensaje a la cola.

MIENTRAS

Este bucle se utiliza para establecer una condición para la ejecución repetida de una instrucción SQL particular o un bloque de instrucción SQL. Las declaraciones se ejecutan siempre que la condición mencionada por el usuario sea VERDADERA. Tan pronto como la condición falla, el ciclo deja de ejecutarse.

Sintaxis

WHILE BooleanExpression StatementBlock

Ahora que conocen los comandos DML, pasemos a la siguiente secciónen este artículo sobre el tutorial de SQL, es decir, los comandos DCL.

Comandos de lenguaje de control de datos (DCL)

Esta sección del tutorial de SQL Server le dará una idea sobre el comando mediante el cual se utilizan para reforzar la seguridad de la base de datos en entornos de bases de datos de múltiples usuarios. Los comandos son los siguientes:

CONCEDER

El comando GRANT se utiliza para proporcionar acceso o privilegios sobre la base de datos y sus objetos a los usuarios.

Sintaxis

GRANT PrivilegeName ON ObjectName TO RoleName [CON LA OPCIÓN GRANT]

dónde,

  • PrivilegeName - Es el privilegio / derecho / acceso otorgado al usuario.
  • Nombre del objeto - Nombre de un objeto de base de datos como TABLE / VIEW / STORED PROC.
  • Nombre de usuario - Nombre del usuario que tiene acceso / derechos / privilegios.
  • PÚBLICO - Otorgar derechos de acceso a todos los usuarios.
  • Nombre de rol - El nombre de un conjunto de privilegios agrupados.
  • CON OPCIÓN DE SUBVENCIÓN - Dar acceso al usuario para otorgar derechos a otros usuarios.

Ejemplo

- Para otorgar permiso SELECT a la tabla StudentsInfo al usuario1 GRANT SELECT ON StudentsInfo TO user1

REVOCAR

El comando REVOKE se usa para retirar los privilegios de acceso del usuario otorgados mediante el comando GRANT.

Sintaxis

REVOCAR PrivilegeName ON ObjectName DE PUBLIC

Ejemplo

- Para revocar el permiso otorgado al usuario1 REVOKE SELECT ON StudentsInfo TO user1

Continuando en este tutorial de SQL Server, entendamos cómo crear y usar procedimientos almacenados.

Procedimientos almacenados

Procedimientos almacenados son unidades reutilizables que encapsulan una lógica empresarial específica de la aplicación. Por lo tanto, es un grupo de sentencias SQL y lógica, compiladas y almacenadas juntas para realizar una tarea específica.

Sintaxis

CREAR [O REEMPLAZAR] PROCEDIMIENTO nombre_procedimiento [(nombre_parámetro [ENTRADA | SALIDA | ENTRADA SALIDA] tipo [])] ES BEGIN [sección_declaración] sección_ejecutable // Sentencia SQL utilizada en el procedimiento almacenado END GO

Ejemplo

--Crear un procedimiento que devolverá un nombre de estudiante cuando el StudentId se proporcione como parámetro de entrada al procedimiento almacenado Crear PROCEDURE GetStudentName (@StudentId INT, --Parámetro de entrada, @StudName VARCHAR (50) OUT --Parámetro de salida, AS BEGIN SELECT @StudName = StudentName FROM StudentsInfo WHERE StudentID = @ StudentId END

Pasos a ejecutar:

      • Declare @StudName como nvarchar (50)
      • EXEC GetStudentName 01, salida @StudName
      • SELECCIONAR @StudName

El procedimiento anterior devuelve el nombre de un estudiante en particular,en dar esa identificación de los estudiantes como entrada. A continuación, en este tutorial de SQL Server, comprendamos los comandos del lenguaje de control de transacciones.

Comandos de lenguaje de control de transacciones (TCL)

Esta sección del tutorial de SQL Server le dará una idea de los comandos que se utilizan para administrar transacciones en la base de datos.Los comandos son los siguientes:

COMETER

El comando COMMIT se usa para guardar la transacción en la base de datos.

Sintaxis

COMETER

RETROCEDER

El comando ROLLBACK se utiliza para restaurar la base de datos al último estado comprometido.

Sintaxis

RETROCEDER

NOTA: Cuando usa ROLLBACK con SAVEPOINT, puede saltar directamente a un punto de guardado en una transacción en curso. Sintaxis: ROLLBACK TO SavepointName

PUNTO DE GUARDADO

El comando SAVEPOINT se utiliza para guardar temporalmente una transacción. Por lo tanto, si desea retroceder a cualquier punto, puede guardar ese punto como 'SAVEPOINT'.

Sintaxis

SAVEPOINT SAVEPOINTNAME

Considere la siguiente tabla para comprender el funcionamiento de las transacciones en la base de datos.

Identificación del Estudiante Nombre del estudiante
1Rohit
2Suhana
3Ashish
4Prerna

Ahora, usa el siguiente para comprender las transacciones en la base de datos.

INSERT INTO StudentTable VALUES (5, 'Avinash') COMMIT UPDATE StudentTable SET name = 'Akash' WHERE id = '5' SAVEPOINT S1 INSERT INTO StudentTable VALUES (6, 'Sanjana') SAVEPOINT S2 INSERT INTO StudentTable VALUES (7, 'Sanjay ') GUARDAR PUNTO S3 INSERTAR EN StudentTable VALORES (8,' Veena ') GUARDAR S4 SELECT * FROM StudentTable

A continuación, en este artículo sobre el tutorial de SQL Server, entendamos cómo manejar excepciones en Transact-SQL.

Manejo de excepciones

Hay dos tipos de excepciones, es decir, las excepciones definidas por el sistema y las excepciones definidas por el usuario. Como sugiere el nombre, el manejo de excepciones es un proceso mediante el cual un usuario puede manejar las excepciones generadas. Para manejar las excepciones, debe comprender las siguientes declaraciones de flujo de control:

LANZAR

Esta cláusula se utiliza para generar una excepción y transfiere la ejecución a un bloque CATCH de una construcción TRY… CATCH.

Sintaxis

THROW [ErrorNumber, @localvariable, State] []

dónde,

  • Numero erroneo – Aconstante o variable que representa la excepción.
  • Mensaje – Avariable o cadena que describe la excepción.
  • EstadoUna constante o variable entre 0 y 255 que indica el estado a asociar con el mensaje.
THROW 51000, 'El registro no existe', 1

TRATA DE ATRAPARLO

Se utiliza para implementar el manejo de excepciones en Transact-SQL. Se puede incluir un grupo de declaraciones en el bloque TRY. En caso de que ocurra un error en el bloque TRY, el control se pasa a otro grupo de declaraciones que están encerradas en un bloque CATCH.

Sintaxis

BEGIN TRY StatementBlock FIN TRY BEGIN CATCH [StatementBlock] END CATCH []
BEGIN TRY SELECT * FROM StudentsInfo END TRY BEGIN BEGIN CATCH SELECT ERROR_NUMBER () AS ErNum, ERROR_MESSAGE () AS ErMsg END CATCH

EN Con esto, llegamos al final de este artículo sobre el Tutorial de SQL Server. Espero que haya disfrutado leyendo este artículo sobre el tutorial de SQL Server para principiantes.yo Si desea obtener una formación estructurada sobre MySQL, consulte nuestra que viene con capacitación en vivo dirigida por un instructor y experiencia en proyectos de la vida real. Esta capacitación lo ayudará a comprender MySQL en profundidad y lo ayudará a dominar el tema. Tienes una pregunta para nosotros? Por favor, menciónelo en la sección de comentarios de ' Tutorial de SQL Server ”Y me pondré en contacto contigo.