¿Cómo utilizar variables T-SQL para insertar datos utilizando un procedimiento almacenado de SQL Server?
Tutorial sobre cómo insertar datos con un procedimiento almacenado de SQL Server utilizando variables T-SQL. Y también cómo mostrar u ocultar el número de filas insertadas por el procedimiento. Este ejemplo de un procedimiento T-SQL inserta filas en una tabla de clientes. Este es un tutorial de 3 pasos para aprender cómo insertar filas desde un procedimiento almacenado con variables.
Table of Contents
1. Crear la tabla de ventas para usarla en el procedimiento
Primero, verifique que la tabla de clientes de ejemplo no exista. Si la tabla existe, entonces bórrela con el comando DROP TABLE. Luego cree la tabla de clientes para insertar las filas del ejemplo.
-- Test if the table CUSTOMERS already exists -- And delete it if necessary IF EXISTS( SELECT 1 FROM sys.objects WHERE object_id = object_id(N'[dbo].[CUSTOMERS]') AND type in (N'U') ) DROP TABLE [dbo].[CUSTOMERS] GO -- Create the CUSTOMERS table with the column NAME declared as UNIQUE -- The UNIQUE keyword defines the column with a unique value -- Inserting two customers with the same name is therefore impossible CREATE TABLE [dbo].[CUSTOMERS] ( [CLIENTID] int IDENTITY(1,1), [NAME] nvarchar(20) UNIQUE, [CITY] nvarchar(20) ) GO
2. Crear el procedimiento almacenado de SQL Server para insertar datos
Primero verifique si el procedimiento almacenado ya existe en la base de datos y bórrelo si es necesario. En segundo lugar, cree el procedimiento almacenado uspInsertClient para insertar dos campos pasados como parámetros, el nombre y la ciudad, en la tabla de clientes.
IF EXISTS( SELECT 1 FROM sys.objects WHERE object_id = object_id(N'uspInsertCustomer') AND type in (N'P') ) DROP PROCEDURE uspInsertCustomer; GO CREATE PROCEDURE dbo.uspInsertCustomer @Name nvarchar(20), @City nvarchar(20) AS BEGIN INSERT INTO dbo.Customers (Name, City) VALUES (@Name, @City); END; GO
Ejecute el procedimiento tres veces para insertar nuevos clientes en la tabla.
-- Deactivate the option to hide the number of insertions SET NOCOUNT OFF; -- Insert three new customers EXECUTE dbo.uspInsertCustomer @Name = 'MAMMADOU', @City = 'Toulouse'; EXECUTE dbo.uspInsertCustomer @Name = 'KARIM', @City = 'Nantes'; EXECUTE dbo.uspInsertCustomer @Name = 'ISAAC', @City = 'Versailles';
Este ejemplo de una consulta de inserción en el procedimiento almacenado de SQL Server se utiliza para insertar filas en una tabla. El código verifica la existencia del procedimiento de antemano para evitar errores en la creación. El código facilita la llamada al procedimiento creado con los parámetros. Y así estandarizar la inserción de datos en esta tabla.
3. Opción para ocultar el número de filas insertadas
Cuando inserta datos desde un procedimiento de SQL Server, por defecto, el sistema muestra el número de filas insertadas. El comando SET NOCOUNT ON le dice a SQL Server que no muestre el número de filas afectadas. En nuestro caso, insertado por la consulta SQL INSERT. Así, si la opción está habilitada, no se muestra el número de filas, como en el ejemplo de abajo. Esta opción de visualización permite evitar contaminar archivos o tablas de registro durante la ejecución de procedimientos almacenados complejos.
-- Deactivate the option to hide the number of insertions SET NOCOUNT ON; -- Insert three clients with the option enabled EXECUTE dbo.uspInsertCustomer @Name = 'ISACH', @City = 'Lille'; EXECUTE dbo.uspInsertCustomer @Name = 'AHMED', @City = 'Bordeaux'; EXECUTE dbo.uspInsertCustomer @Name = 'YANIS', @City = 'Marseille';
Finalmente, verifique el resultado de la consulta y lea los datos con una consulta SELECT en la tabla de clientes. Observe que los tres clientes están presentes dos veces cada uno en la tabla. Esto corresponde a las seis ejecuciones del comando SQL. Es decir, tres veces con la opción de visualización de conteo de filas encendida y tres veces con la opción de visualización apagada.
SELECT * FROM dbo.Customers;
Este tutorial de desarrollo T-SQL explica cómo insertar datos desde un procedimiento almacenado de SQL Server. Finalmente, aquí hay un tutorial sobre cómo crear un procedimiento almacenado de SQL que devuelve valores con la opción OUTPUT.
Conclusión sobre la inserción de datos utilizando procedimientos almacenados de SQL Server
Este tutorial T-SQL explica cómo crear una tabla de ventas y cómo insertar datos con un procedimiento almacenado de SQL Server, utilizando variables. El tutorial también enseña cómo controlar la visualización del número de filas insertadas utilizando el comando SET NOCOUNT. Siguiendo estos pasos, es posible estandarizar efectivamente la inserción de datos y gestionar la visualización de los conteos de filas para procedimientos almacenados más complejos.
Be the first to comment