SQL’de Dinamik Uniqueidentifier Kullanımı

Merhaba arkadaşlar dinamik SQL Uniqueidentifier kullanmaya çalışırken aşağıdaki hata kodu ile karşılaştım ve çözümünü de aşağıda sizlerle paylaşıyor olacağım. Aşağıdaki belirttiğim hatayı select sorgusunda uniqueidentifier şartı ile listeyi getirmeye çalışırken aldım. Aslında hatanın çözümü çok basit olmakla beraber büyük bir iş yükünden bizleri kurtarmaktadır.

Hata Kodu: Msg 402, Level 16, State 1, Procedure spGetNews, Line 11
The data types nvarchar(max) and uniqueidentifier are incompatible in the add operator.

Çözümü:

create proc spGetNews
@ID uniqueidentifier
as
begin
      declare @query nvarchar(MAX) = '';
      set @query ='select * from News where ID=@I'
      exec sp_executesql @query,N'@I uniqueidentifier',@I=@ID
end
GO

*Prosedürümüzü de aşağıdaki gibi çalıştırarak test edebiliriz.

exec spGetNews '37FEDB7B-1EB7-4C9E-A74C-0000840C13D7'

Bir başka makalede görüşmek dileğiyle…

Sedat Demirdoğan

[Toplam:1    Ortalama:5/5]
Avatar

Sedat Demirdoğan

-Yazılım Sınıfı Kurucusu -Bilişim Grubu Kurucu Üye -Bilişim Derneği Şişli Bölge Temsilcisi -Jollytur Yazılım Geliştirme Ekip Lideri -Kick Boks tutkunu, Gitarist ve Girişimci

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Copy Protected by Chetan's WP-Copyprotect.
%d blogcu bunu beğendi: