无法调用表值函数

时间:2016-11-07 06:33:28

标签: sql-server function

我有这个功能(MS SQL Server):

CREATE FUNCTION dbo.activeEmpGivenCity(@city nvarchar(50))
RETURNS TABLE
AS
RETURN
(
    SELECT Emp_First_Name
    FROM Employee_Details AS e
    INNER JOIN City AS c ON e.Emp_City_Id = c.City_Id 
    WHERE @city = City_Name AND Emp_Active = 1
);

我正在调用这个函数:

SELECT * from [dbo].[activeEmpGivenCity]('a');

我收到此错误:

Msg 4121, Level 16, State 1, Line 223
Cannot find either column "dbo" or the user-defined function or aggregate     
"dbo.activeEmpGivenCity", or the name is ambiguous.

此外,当我将鼠标悬停在函数调用上时,它会显示:

Invalid object name 'dbo.activeEmpGivenCity'.

我知道该功能存在,它显然在我的数据库中。

我已经浏览了这个网站:http://www.sqlservercurry.com/2014/03/user-defined-functions-in-sql-server_20.html

我正在按照他/她的方式调用表值函数。 发生了什么,我该如何解决?

1 个答案:

答案 0 :(得分:0)

可能是您正试图在其他数据库中调用您的函数

更改您的功能如下:

注意:在相对数据库中执行以下功能

<div class="load_more">
  im having some <a href="#">link</a> here
</div>