Sql Server Table Tipinde Create Type Yapma Yeni Bir Veri Tipi Oluşturma
Sql Serverda birçok durumla karşılaşabilirsiniz. Yazdığınız kod parçalarında scriptlerde kendinize ait bir tip belirtmek isterseniz , zaten var olarak varchar,int… gibi tipler var , daha neden ihtiyaç duyuyoruz yeni bir tipe diyor olabilirsiniz , En temelden bir örnek vermek gerekir ise bir Stored Procedure yazıyor olabilirsiniz ve bu sp’ye bir parametre olarak birden fazla satırdan oluşan bir yapı göndermek istiyor olabilirsiniz , bunun için aklınıza ilk gelen bir tablo göndermek olabilir , Evet ama bu tabloyu procedure nasıl göndereceğim ? parametre tipine ne yazacağım ? derseniz burada devreye sizin yaratacağınız tip devreye girmekte , bir tip olarak table yaratırsınız ve paratmetrede bu tipi gönderirisiniz,
Öncelikle nasıl yaratılır ?
CREATE TYPE [Type Name] AS TABLE
(
[kolon1] varchar(150) ,
[kolon2] varchar(150),
[kolon3] int…
)
Yukarıdaki şekilde tipinizi yaratabilirsiniz , istediğiniz kolonları kendinize göre uyarlayabilirsiniz.
bu tipe standart bir şekilde değişken tanımı yaparak tablo insert edebilirisiniz. ve daha sonra sp’ye parametre olarak verebilirsiniz.
CREATE PROCEDURE Transfer @Table [Type Name] READONLY
AS
select * from @Table
…
declare @test [Type Name]
go
Insert @test
select [kolon1] ,[kolon2] ,[kolon3],… from [Table Name]
go
exec Transfer @test