Bu şekilde tablonun olup olmadğını kontrol etmek değilde. String içinde oluşturduğum SQL cümlesinden çıkan sonuç üzerinden çalışmak istiyorum. Yani tam olarak
Kod: Tümünü seç
DECLARE @SQL Varchar(200)
declare @tbl Varchar(100)
declare @stkid Varchar(30)
declare @mik Varchar(30)
select @stkid=Kartid,@mik=Miktar from inserted
begin
set @tbl=DB_NAME() --Çalıştığım katalog (veri tabanı)
set @tbl=Left(@tbl,Len(@tbl)-4)+'GENEL..Kart' /*başka katalog içindeki tablo.*/
SET @SQL = 'SELECT * FROM ' + @tbl +' where id='+@stkid
Artık @SQL string bilgisi içinde bulunan SQL cümlenin çalışması sonucu kayıt olup olmadığının kontrolünü yapmam lazım. Ondan sonrası kolay.
Kod: Tümünü seç
if (??????????????????????)--Kontrol sonrası kayıt varsa
begin
SET @SQL = 'update '+@tbl+' set Toplam=isNull(Toplam,0+'+@mik+' where id='+@stkid
EXEC(@SQL)
end else RAISERROR('[%s] nolu kart bulunamadı!',16,1,@stkid)
end
işte bütün mesele burada. Başka Veritabanı içinde bulunan tabloyu kontrol edip güncellemem lazım. Güncelleme kısmı oldu fakat kontrol edemiyorum. Başka veri tabanı kullanmak için USE komutunu kullanmayı denedim o da olmadı.