연습: Northwind Customers 테이블의 업데이트 저장 프로시저 만들기
일부 도움말 항목에는 Visual Studio 문서 추가 저장된 프로시저는 Northwind 예제 데이터베이스에서 Customers 테이블의 데이터 업데이트 (삽입, 업데이트 및 삭제)를 수행 하는 데 필요 합니다.
이 연습에서는 이러한 추가 만들기 저장 프로시저를 Northwind 샘플 데이터베이스에 대 한 지침을 제공 합니다. SQL Server.
다음 단계 섹션 아래에 이러한 추가 저장된 프로시저를 사용 하는 방법을 보여 주는 항목의 링크를 제공 합니다.
이 연습을 통해 다음 작업을 수행하는 방법을 배웁니다.
Northwind 예제 데이터베이스의 데이터 연결을 만듭니다.
저장된 프로시저를 만듭니다.
사전 요구 사항
이 연습을 완료하려면 다음이 필요합니다.
- Northwind 샘플 데이터베이스의 SQL Server 버전에 액세스할 수 있어야 합니다.자세한 내용은 방법: 샘플 데이터베이스 설치를 참조하십시오.
Northwind 데이터베이스에 연결
이 연습에서는 SQL Server 버전의 Northwind 데이터베이스에 연결을 해야합니다.다음 절차는 데이터 연결을 만드는 방법을 제공 합니다.
[!참고]
Northwind 데이터베이스에 데이터 연결을 이미 있을 경우 저장 된 프로시저 만들기 다음 섹션으로 이동할 수 있습니다.
Northwind SQL Server 데이터베이스에 대한 데이터 연결을 만들려면
보기 메뉴에서 서버 탐색기/데이터베이스 탐색기를 클릭합니다.
마우스 오른쪽 단추로 데이터 연결 를 클릭 하 고 연결 추가.
데이터 소스 선택 대화 상자에서 Microsoft SQL Server를 클릭한 다음 확인을 클릭합니다.
연결 추가 대화 상자가 열렸는데 데이터 소스가 **Microsoft SQL Server(SqlClient)**가 아닌 경우 변경을 클릭하여 데이터 소스 선택/변경 대화 상자를 열고 Microsoft SQL Server를 클릭한 다음 확인을 클릭합니다. 자세한 내용은 데이터 소스 선택/변경 대화 상자를 참조하십시오.
드롭다운 목록에서 서버 이름을 클릭하거나 Northwind 데이터베이스가 있는 서버의 이름을 입력합니다.
데이터베이스 또는 응용 프로그램의 요구 사항에 따라 중 하나를 클릭 Windows 인증을 사용 하 여 또는 SQL Server 실행 하는 컴퓨터에 로그온 할 특정 사용자 이름 및 암호를 사용 (SQL Server 인증).자세한 내용은 연결 추가/수정(Microsoft SQL Server)을 참조하십시오.
데이터베이스 이름 선택 또는 입력 목록에서 Northwind 데이터베이스를 클릭합니다.
확인을 클릭합니다.
서버 탐색기/데이터베이스 탐색기에 데이터 연결이 추가됩니다.
저장 프로시저 만들기
제공 된 SQL 스크립트는 Northwind 데이터베이스에 대해 사용 하 여 실행 하 여 저장된 프로시저를 만들는 Visual Database Tools 에서 사용할 수 있는 서버 탐색기/데이터베이스 탐색기.
SQL 스크립트를 사용하여 저장 프로시저를 만들려면
서버 탐색기/데이터베이스 탐색기에서 Northwind 데이터베이스를 확장합니다.
마우스는 저장 프로시저 클릭 한 노드의 새 저장 프로시저 추가.
다음 코드를 코드 편집기에 붙여 넣습니다. 대체는 CREATE PROCEDURE 템플릿:
IF EXISTS (SELECT * FROM sysobjects WHERE name = 'SelectCustomers' AND user_name(uid) = 'dbo') DROP PROCEDURE dbo.[SelectCustomers] GO CREATE PROCEDURE dbo.[SelectCustomers] AS SET NOCOUNT ON; SELECT CustomerID, CompanyName, ContactName, ContactTitle, Address, City, Region, PostalCode, Country, Phone, Fax FROM dbo.Customers GO IF EXISTS (SELECT * FROM sysobjects WHERE name = 'InsertCustomers' AND user_name(uid) = 'dbo') DROP PROCEDURE dbo.InsertCustomers GO 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) GO IF EXISTS (SELECT * FROM sysobjects WHERE name = 'UpdateCustomers' AND user_name(uid) = 'dbo') DROP PROCEDURE dbo.UpdateCustomers GO 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) GO IF EXISTS (SELECT * FROM sysobjects WHERE name = 'DeleteCustomers' AND user_name(uid) = 'dbo') DROP PROCEDURE dbo.DeleteCustomers GO CREATE PROCEDURE dbo.DeleteCustomers ( @Original_CustomerID nchar(5) ) AS SET NOCOUNT OFF; DELETE FROM [dbo].[Customers] WHERE (([CustomerID] = @Original_CustomerID)) GO
코드 편집기의 모든 텍스트를 선택 하 고 선택한 텍스트를 마우스 오른쪽 단추로 클릭 선택 영역 실행.
SelectCustomers, InsertCustomers, UpdateCustomers, 및 DeleteCustomers Northwind 데이터베이스에 대해 저장된 프로시저를 만들 합니다.
다음 단계
저장된 프로시저를 만든 후에 다음이를 사용 하는 방법을 보여 주는 연습을 시도해 보십시오.
How to: Assign Stored Procedures to Perform Updates, Inserts, and Deletes
Walkthrough: Creating LINQ to SQL Classes with the O/R Designer
Walkthrough: Customizing the Insert, Update, and Delete Behavior of Entity Classes