删除语句在存储过程中不起作用
Delete statement not working in Stored Procedure
我正在尝试从存储过程 SQL-Server 2012 中删除多条记录。我有 select 然后删除语句,显然我的删除语句没有被调用
ALTER PROCEDURE [dbo].[DeleteFunctionsNavigation]
@FunctionName nvarchar(250),
@Function_identity INT OUTPUT
AS
BEGIN
SET NOCOUNT ON;
SELECT Navigation_Functions.Function_ID
FROM Navigation_Functions
WHERE Navigation_Functions.FunctionName = @FunctionName
SET @Function_identity=SCOPE_IDENTITY()
DELETE FROM Navigation_FunctionHierarchy
WHERE Navigation_FunctionHierarchy.Function_IDs = @Function_identity
RETURN
END
SCOPE_IDENTITY()
在此上下文中的用法不正确。试试这个
ALTER PROCEDURE [dbo].[DeleteFunctionsNavigation]
@FunctionName nvarchar(250),
@Function_identity INT OUTPUT
AS
BEGIN
SET NOCOUNT ON;
SELECT @Function_identity = Navigation_Functions.Function_ID
FROM Navigation_Functions
WHERE Navigation_Functions.FunctionName = @FunctionName
DELETE FROM Navigation_FunctionHierarchy
WHERE Navigation_FunctionHierarchy.Function_IDs = @Function_identity
RETURN
END
我正在尝试从存储过程 SQL-Server 2012 中删除多条记录。我有 select 然后删除语句,显然我的删除语句没有被调用
ALTER PROCEDURE [dbo].[DeleteFunctionsNavigation]
@FunctionName nvarchar(250),
@Function_identity INT OUTPUT
AS
BEGIN
SET NOCOUNT ON;
SELECT Navigation_Functions.Function_ID
FROM Navigation_Functions
WHERE Navigation_Functions.FunctionName = @FunctionName
SET @Function_identity=SCOPE_IDENTITY()
DELETE FROM Navigation_FunctionHierarchy
WHERE Navigation_FunctionHierarchy.Function_IDs = @Function_identity
RETURN
END
SCOPE_IDENTITY()
在此上下文中的用法不正确。试试这个
ALTER PROCEDURE [dbo].[DeleteFunctionsNavigation]
@FunctionName nvarchar(250),
@Function_identity INT OUTPUT
AS
BEGIN
SET NOCOUNT ON;
SELECT @Function_identity = Navigation_Functions.Function_ID
FROM Navigation_Functions
WHERE Navigation_Functions.FunctionName = @FunctionName
DELETE FROM Navigation_FunctionHierarchy
WHERE Navigation_FunctionHierarchy.Function_IDs = @Function_identity
RETURN
END