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

PaylaşShare on Facebook0Tweet about this on TwitterShare on Google+0Pin on Pinterest0Share on Tumblr0Share on LinkedIn0Email this to someone

Yazar Hakkında Yazarın Bütün Yazıları Yazarın Web Sitesi

sedat demirdoğan

yazilimsinifi.com ve edebiyatsinifi.com Kurucusu, Jollytur Yazılım Geliştirme Ekip Lideri, Kick Boks tutkunu, Gitarist ve Girişimci.

Bir Cevap Yazın

Your email address will not be published. Required fields are marked *


*