[英]Working with user-defined Function
我正在嘗試創建一個名為Employee_Name的用戶定義函數。 傳遞員工ID作為參數。
這是我到目前為止所擁有的:
Create function Employee_name (
@EmployeeID int
)
Return Table
as
Return(
Select * From Employees
Where Employee_name = @EmplyeeId)
go
SELECT * FROM Employee_name
但是我不認為我做對了,因為返回表用紅色標記。 這意味着一個錯誤。 我仍在學習,這對我來說有點困惑。 如果返回表僅是返回值,我會很痛苦。
Return Table
應為Returns Table
您需要將員工ID傳遞給用戶定義的函數
SELECT * FROM Employee_name (1)
也應該是RETURNS TABLE
。 所以
CREATE FUNCTION Employee_name
(
@EmployeeID int
)
RETURNS TABLE
AS
RETURN
(
SELECT * FROM Employees
WHERE Employee_name = @EmployeeID
)
GO
SELECT * FROM Employee_name (1)
但是,您的函數名稱和Employees
表中的字段名稱之間可能會發生命名沖突(兩者看上去都稱為Employee_name
)
更改為:
Create function Employee_name (
@EmployeeID int
)
Returns Table
as
Return(
Select * From Employees
Where Employee_name = @EmplyeeId)
go
並在代碼中:
select * from Employee_name (1)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.