Mayo 17, 2013
kenneth
Cuando trabajamos con una base de datos MS SQL Server, es justo y necesario tener conocimiento sobre su lenguaje T-SQL y por medio del mismo utilizar declaraciones como ”Data definición language (DDL)” y ”Data manipulation language (DML)“.
Utilizando estas herramientas podemos tener mayor rendimiento cuando trabajamos con estas instancias de bases de datos.
Además, cuando necesitamos hacer alguna manipulación de datos (DML) es recomendado utilizar procedimientos almacenados, por razones de seguridad, rendimiento, entre otras según indica su documentación en ”Benefits of Using Stored Procedures“.
Ahora bien, a continuación veremos como crear una base de datos de pruebas para definir una tabla llamada Users y crear un procedimiento almacenado para agregar nuevos registros a la tabla recién creada (“Users”), todo esto por medio de T-SQL.
- Crear base de datos.
Primero entraremos a nuestra instancia de bases de datos y crearemos nuestra nueva base de datos, el código sería el siguiente:
<pre title="Crear base de datos ">USE master
IF EXISTS(SELECT NAME FROM SYS.DATABASES WHERE NAME = 'pruebas')
BEGIN
DROP DATABASE pruebas
END
GO
CREATE DATABASE pruebas
GO
Ahora tenemos una nueva base de datos llamada pruebas, seguidamente veremos como crear la tabla “Users”.
- Crear una tabla en la base de datos.
Definiremos una tabla donde almacenar el nombre, la contraseña y el estado de todos los usuarios, el código para hacer esta tarea se vera de la siguiente manera:
<pre title="Crear tabla ">USE pruebas
Go
CREATE TABLE Users(
Id INT PRIMARY KEY IDENTITY(1,1) NOT NULL,
Name VARCHAR(50) NOT NULL,
Pass VARCHAR(32) NOT NULL,
Available BIT DEFAULT 1 NOT NULL
)
GO
Terminado este paso tendremos a nuestra disposición la tabla donde hacer persistente la información de los usuarios.
- Creación del procedimiento almacenado.
Una vez creada la base de datos y la tabla “Users”, podemos hacer CRUD sobre nuestra tabla nueva, en este caso haremos un procedimiento almacenado para insertar nuevos registros a nuestra tabla de usuarios, el procedimiento almacenado se puede definir de la siguiente manera:
<pre title="Crear procedimiento almacenado ">CREATE PROCEDURE addUser(
@pName VARCHAR(50),
@pPass VARCHAR(32)
)
AS
BEGIN
SET NOCOUNT ON;
INSERT INTO Users
(Name, Pass, Available)
VALUES (@pName, @pPass, DEFAULT);
END
GO
Una vez ejecutado, ya podemos utilizar el procedimiento almacenado para agregar nuevos registros.
- Ejecutar procedimiento almacenado:
Para finalizar, veremos como probar nuestro procedimiento almacenado, podemos usar el siguiente código:
<pre title="Ejecutar procedimiento almacenado ">EXEC dbo.addUser
@pName = N'UserFirst',
@pPass = N'PassFirst'
GO
Ahora si consultamos nuestra tabla podemos observar el nuevo registro agregado.
Espero que les sea de mucha ayuda para cuando estén trabajando con una base de datos MS SQL Server,
Saludos,