无法绑定多部分标识符"dbo.showSelectedTable"

Stu*_*ent 2 sql database sql-server function

我试图使函数调用由用户选择的表我尝试制作它并完成它

CREATE FUNCTION showSelectedTable(@code varchar(1)) RETURNS 
@tempEMP TABLE
(id nvarchar(9),name nvarchar(20),mdname nvarchar(20),lname nvarchar(50),   tgl datetime,adrs nvarchar(50),sex nvarchar(1),salary int,superssn nvarchar(9),dno nvarchar(3))

BEGIN

DECLARE @temp1 TABLE (id nvarchar(9),name nvarchar(30),idmgr nvarchar(9),dtime datetime)
DECLARE @temp2 TABLE (EmpName nvarchar(30),ProjectName nvarchar(30))

    if @code = 'E'
        BEGIN
        INSERT INTO @tempEMP
            SELECT *
            FROM employee
        RETURN;
        END
    ELSE IF @code = 'D'
        BEGIN           
            INSERT INTO @temp1
                SELECT *
                FROM department
            RETURN;
        END
    ELSE IF @code = 'W'
        BEGIN
            INSERT INTO @temp2
                SELECT e.fname,p.pname
                FROM works_on W,employee E,project P
                WHERE E.ssn = W.ssn AND W.pno = P.pnumber
            RETURN;
        END
    RETURN;
END

但是当试着打电话时

select dbo.showSelectedTable 'W'

我收到了这条消息:

无法绑定多部分标识符"dbo.showSelectedTable".

有人可以帮我解决这个问题吗?

Abd*_*eed 5

用这个,

select * from dbo.showSelectedTable('W')
Run Code Online (Sandbox Code Playgroud)

Table-Valued Functions就像对待表格一样对待表值函数.