Tutorial: Crear procedimientos almacenados para la tabla Customers de Northwind

En este tutorial se muestra cómo crear cuatro procedimientos almacenados en la base de datos de ejemplo Northwind. Los procedimientos almacenados permiten seleccionar, insertar, actualizar y eliminar clientes en la base de datos.

La sección Pasos siguientes contiene vínculos a temas que muestran cómo usar estos procedimientos almacenados.

Requisitos previos

Para completar este tutorial, necesita lo siguiente:

Conectar con la base de datos Northwind

Para poder crear los procedimientos almacenados, debe conectarse a la versión para SQL Server de la base de datos Northwind. En el procedimiento siguiente se muestra cómo crear una conexión de datos.

Nota

Si ya tiene una conexión de datos a la base de datos Northwind, puede ir a la sección siguiente, Crear los procedimientos almacenados.

Para crear una conexión de datos a la base de datos Northwind de SQL Server

  1. En el menú Ver, haga clic en el Explorador de servidores/Explorador de bases de datos.

  2. Haga clic con el botón secundario en Conexiones de datos y haga clic en Agregar conexión.

  3. En el cuadro de diálogo Elegir origen de datos, haga clic en Microsoft SQL Server y, a continuación, haga clic en Aceptar.

    Si se abre el cuadro de diálogo Agregar conexión y no está Origen de datos en Microsoft SQL Server (SqlClient), haga clic en Cambiar para abrir el cuadro de diálogo Elegir o cambiar origen de datos, haga clic en Microsoft SQL Server y, a continuación, haga clic en Aceptar. Para obtener más información, vea Elegir/cambiar origen de datos (Cuadro de diálogo).

  4. Haga clic en un Nombre del servidor en la lista desplegable o escriba el nombre del servidor en el que se encuentra la base de datos Northwind.

  5. En función de los requisitos de la base de datos o la aplicación, haga clic en Usar autenticación de Windows o use un nombre de usuario y contraseña concretos para iniciar sesión en el equipo en el que se ejecuta SQL Server (Autenticación de SQL Server). Para obtener más información, vea Agregar o modificar conexión (Microsoft SQL Server).

  6. En la lista Seleccionar o escribir nombre de base de datos, haga clic en la base de datos Northwind.

  7. Haga clic en Aceptar.

    Se agrega la conexión de datos al Explorador de servidores/Explorador de bases de datos.

Crear los procedimientos almacenados

Crear los procedimientos almacenados mediante las Visual Database Tools disponibles en el Explorador de servidores o en elExplorador de bases de datos.

Para crear los procedimientos almacenados con el script de SQL

  1. Expanda el nodo de la base de datos Northwind en el Explorador de servidores/Explorador de bases de datos.

  2. Defina el procedimiento almacenado SelectCustomers mediante las siguientes tareas:

    1. Haga clic con el botón secundario en el nodo Procedimientos almacenados y, a continuación, haga clic en Agregar nuevo procedimiento almacenado.

    2. Reemplace la plantilla CREATE PROCEDURE por el código siguiente:

      CREATE PROCEDURE dbo.[SelectCustomers]
      AS
          SET NOCOUNT ON;
      SELECT CustomerID, CompanyName, ContactName, ContactTitle, Address, City, Region, PostalCode, Country, Phone, Fax FROM dbo.Customers
      
    3. Guarde el procedimiento.

    4. El procedimiento almacenado SelectCustomers se agrega a la base de datos Northwind. Observe que la definición del procedimiento cambia de CREATE PROCEDURE a ALTER PROCEDURE cuando se guarda.

  3. Defina el procedimiento almacenado InsertCustomers mediante las siguientes tareas:

    1. Haga clic con el botón secundario en el nodo Procedimientos almacenados y, a continuación, haga clic en Agregar nuevo procedimiento almacenado.

    2. Reemplace la plantilla CREATE PROCEDURE por el código siguiente:

      CREATE PROCEDURE dbo.InsertCustomers
      (
          @CustomerID nchar(5),
          @CompanyName nvarchar(40),
          @ContactName nvarchar(30),
          @ContactTitle nvarchar(30),
          @Address nvarchar(60),
          @City nvarchar(15),
          @Region nvarchar(15),
          @PostalCode nvarchar(10),
          @Country nvarchar(15),
          @Phone nvarchar(24),
          @Fax nvarchar(24)
      )
      AS
          SET NOCOUNT OFF;
      INSERT INTO [dbo].[Customers] ([CustomerID], [CompanyName], [ContactName], [ContactTitle], [Address], [City], [Region], [PostalCode], [Country], [Phone], [Fax]) VALUES (@CustomerID, @CompanyName, @ContactName, @ContactTitle, @Address, @City, @Region, @PostalCode, @Country, @Phone, @Fax);
      
      SELECT CustomerID, CompanyName, ContactName, ContactTitle, Address, City, Region, PostalCode, Country, Phone, Fax FROM Customers WHERE (CustomerID = @CustomerID)
      
    3. Guarde el procedimiento.

    4. El procedimiento almacenado InsertCustomers se agrega a la base de datos Northwind. Observe que la definición del procedimiento cambia de CREATE PROCEDURE a ALTER PROCEDURE cuando se guarda.

  4. Defina el procedimiento almacenado UpdateCustomers mediante las siguientes tareas:

    1. Haga clic con el botón secundario en el nodo Procedimientos almacenados y, a continuación, haga clic en Agregar nuevo procedimiento almacenado.

    2. Reemplace la plantilla CREATE PROCEDURE por el código siguiente:

      CREATE PROCEDURE dbo.UpdateCustomers
      (
          @CustomerID nchar(5),
          @CompanyName nvarchar(40),
          @ContactName nvarchar(30),
          @ContactTitle nvarchar(30),
          @Address nvarchar(60),
          @City nvarchar(15),
          @Region nvarchar(15),
          @PostalCode nvarchar(10),
          @Country nvarchar(15),
          @Phone nvarchar(24),
          @Fax nvarchar(24),
          @Original_CustomerID nchar(5)
      )
      AS
          SET NOCOUNT OFF;
      UPDATE [dbo].[Customers] SET [CustomerID] = @CustomerID, [CompanyName] = @CompanyName, [ContactName] = @ContactName, [ContactTitle] = @ContactTitle, [Address] = @Address, [City] = @City, [Region] = @Region, [PostalCode] = @PostalCode, [Country] = @Country, [Phone] = @Phone, [Fax] = @Fax WHERE (([CustomerID] = @Original_CustomerID));
      
      SELECT CustomerID, CompanyName, ContactName, ContactTitle, Address, City, Region, PostalCode, Country, Phone, Fax FROM Customers WHERE (CustomerID = @CustomerID)
      
    3. Guarde el procedimiento.

    4. El procedimiento almacenado UpdateCustomers se agrega a la base de datos Northwind. Observe que la definición del procedimiento cambia de CREATE PROCEDURE a ALTER PROCEDURE cuando se guarda.

  5. Defina el procedimiento almacenado DeleteCustomers mediante las siguientes tareas:

    1. Haga clic con el botón secundario en el nodo Procedimientos almacenados y, a continuación, haga clic en Agregar nuevo procedimiento almacenado.

    2. Reemplace la plantilla CREATE PROCEDURE por el código siguiente:

      CREATE PROCEDURE dbo.DeleteCustomers
      (
          @Original_CustomerID nchar(5)
      )
      AS
          SET NOCOUNT OFF;
      DELETE FROM [dbo].[Customers] WHERE (([CustomerID] = @Original_CustomerID))
      
    3. Guarde el procedimiento.

    4. El procedimiento almacenado DeleteCustomers se agrega a la base de datos Northwind. Observe que la definición del procedimiento cambia de CREATE PROCEDURE a ALTER PROCEDURE cuando se guarda.

Pasos siguientes

En los tutoriales siguientes se muestra cómo usar los procedimientos almacenados que acaba de crear:

Cómo: Asignar procedimientos almacenados para realizar actualizaciones, inserciones y eliminaciones (Object Relational Designer)

Tutorial: Crear clases de LINQ to SQL (Object Relational Designer)

Tutorial: Personalizar el comportamiento de inserción, actualización y eliminación de las clases de entidad

Nota

Si desea repetir este tutorial, primero debe eliminar los procedimientos almacenados que ha definido. De lo contrario, aparecerá el error: Ya existe un objeto denominado "nombreDeProcedimiento" en la base de datos.

Vea también

Otros recursos

Object Relational Designer

LINQ to SQL

Obtener acceso a los datos en Visual Studio

Historial de cambios

Fecha

Historial

Motivo

1 de abril de 2011

Se han corregido errores en los pasos para crear los procedimientos almacenados.

Comentarios de los clientes.