Za pomocą funkcji New User Defined Function w SQL Server Enterprise Manager usiłuję stworzyć nową funkcję, co kończy się komunikatem o błędzie:
Error 2010: Cannot perform alter on bdo.Prognoza because it is an imcompatible object type.
Check syntax przechodzi. Oto kod funkcji:
Kod
CREATE FUNCTION dbo.Prognoza()
RETURNS @ResTab TABLE (id integer, kod varchar(30)) AS
BEGIN
DECLARE @id integer, @kod varchar(30), @stan integer
DECLARE tab CURSOR FOR
SELECT id, kod, stan FROM tow
OPEN tab
WHILE @@FETCH_STATUS=0
BEGIN
FETCH NEXT FROM tab
INTO @id, @kod, @stan
IF @stan>100 INSERT INTO @ResTab(id,kod) VALUES (@id,@kod)
END
CLOSE tab
DEALLOCATE tab
RETURN
END
.RETURNS @ResTab TABLE (id integer, kod varchar(30)) AS
BEGIN
DECLARE @id integer, @kod varchar(30), @stan integer
DECLARE tab CURSOR FOR
SELECT id, kod, stan FROM tow
OPEN tab
WHILE @@FETCH_STATUS=0
BEGIN
FETCH NEXT FROM tab
INTO @id, @kod, @stan
IF @stan>100 INSERT INTO @ResTab(id,kod) VALUES (@id,@kod)
END
CLOSE tab
DEALLOCATE tab
RETURN
END
Proszę o pomoc. Pozdrawiam.