Forum
Function larda tablo isimlerini değişken olarak tanımlayabiliyormuyuz.
2012'de değişmediyse tanımlanamıyor. Bunun için dinamik sql cümlesi oluşturup EXEC, EXECUTE veya sp_executesql metodları ile çalıştırmalısın.
DECLARE @tablo_adi varchar(200);
DECLARE @sql nvarchar(500);
SET @sql='SELECT * FROM '+@tablo_adi;
EXECUTE(sql);
sorumu örneklemek istiyorum aşağıdaki fonksiyona tablo adını değişken olarak verecem ve fonksiyonum çalışacak. Burada LG_001_ITEMS tablo adını değişken olarak göndermek mümkünmü ?
create FUNCTION [dbo].[ANABIRIM] (@LOGICALREF int)
RETURNS VARCHAR(30)
AS
BEGIN
DECLARE @UNITSETREF INT
DECLARE @BIRIMADI VARCHAR(30)
SELECT @UNITSETREF=UNITSETREF FROM LG_001_ITEMS WHERE LOGICALREF=@LOGICALREF
SELECT @BIRIMADI=CODE FROM LG_001_UNITSETL WHERE UNITSETREF=@UNITSETREF AND LINENR=1
RETURN(@BIRIMADI)
END