2008-06-02

SQL Server 2008: Table Valued Parameters

SQL Server 2008 ile birlikte stored procedure parametrelerinde tablo kullanabileceğiz. Bu oldukça güzel bir özellik; eminim bir çoğunuz benim gibi bu özelliği bekliyordu.

Şehir adlarını bir tablo üzerinden toplu bir şekilde bir SP sayesinde ekleyelim. SP miz parametre olarak tablo alacak. Bunun için öncelikle bir test tablosu oluşturalım:

CREATE TABLE TestCity(
[CityId] [int] NOT NULL,
[Name] [varchar](64) NOT NULL
)

Bir tablo tipi oluşturalım:

CREATE TYPE [CityType] AS TABLE(
[CityId] [int] NOT NULL,
[Name] [varchar](64) NOT NULL
)

TestCity tablosuna kayıt ekleyecek SP mizi yazalım:

CREATE PROCEDURE usp_InsCity
@TableParam CityType READONLY
AS
SET NOCOUNT ON
BEGIN
INSERT INTO TestCity Select CityID, Name from @TableParam
END

Şimdi de tem tabloya şehirleri ekleyip kayıt ekleyen SP mizi çalıştıralım:

DECLARE @tmpTest AS CityType

INSERT INTO @tmpTest(CityID,Name) VALUES(6,'İzmir'),(34,'İstanbul'), (63,'Şanlıurfa')
--Kayıt eklemelerini toplu şekilde yapıyoruz:)

EXEC usp_InsCity @tmptest

Not: Tüm Kodlar SQL Server 2008 CTP6 ile test edilmiştir.

Hiç yorum yok:

.::YASAL UYARI::.

©2004-2023 Mehmet GÜZEL, www.mehmetguzel.net

Site içeriği kaynak gösterilmek koşuluyla yayınlanabilir. Yazılan yazı ve yorumlar sadece yazı ve yorum sahiplerini bağlar.