Requisito previo: diferencia entre SQL estático y dinámico
SQL dinámico es una técnica de programación que podría usarse para escribir consultas SQL durante el tiempo de ejecución. El SQL dinámico podría usarse para crear consultas SQL generales y flexibles.
La sintaxis para SQL dinámico es hacer que sea una string como se muestra a continuación:
'SELECT statement';
Para ejecutar una instrucción SQL dinámica, ejecute el procedimiento almacenado sp_executesql como se muestra a continuación:
EXEC sp_executesql N'SELECT statement';
Use el prefijo N con sp_executesql para usar SQL dinámico como una string Unicode.
Pasos para utilizar SQL Dinámico:
- Declare dos variables, @var1 para contener el nombre de la tabla y @var 2 para contener el SQL dinámico:
DECLARE @var1 NVARCHAR(MAX), @var2 NVARCHAR(MAX);
- Establezca el valor de la variable @var1 en table_name :
SET @var1 = N'table_name';
- Cree el SQL dinámico agregando la declaración SELECT al parámetro del nombre de la tabla:
SET @var2= N'SELECT * FROM ' + @var1;
- Ejecute el procedimiento almacenado sp_executesql utilizando el parámetro @var2:
EXEC sp_executesql @var2;
Ejemplo –
SELECT * from geek;
Mesa – Friki
IDENTIFICACIÓN | NOMBRE | CIUDAD |
---|---|---|
1 | Khushi | Jaipur |
2 | neha | Noida |
3 | Meera | Delhi |
Usando SQL Dinámico:
DECLARE @tab NVARCHAR(128), @st NVARCHAR(MAX); SET @tab = N'geektable'; SET @st = N'SELECT * FROM ' + @tab; EXEC sp_executesql @st;
Mesa – Friki
IDENTIFICACIÓN | NOMBRE | CIUDAD |
---|---|---|
1 | Khushi | Jaipur |
2 | neha | Noida |
3 | Meera | Delhi |
Publicación traducida automáticamente
Artículo escrito por khushboogoyal499 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA