删除在SQL中不起作用的存储过程



我想创建一个存储过程来删除表中的一条记录。

我尝试了以下方法,但似乎不起作用:

Delimiter //
CREATE PROCEDURE BIRD_STRIKE_INCIDENT_DELETE  @row text
AS 
BEGIN
DELETE FORM bird_strike.incidents WHERE row_names = @row
END
delimiter ; 

Call BIRD_STRIKE_INCIDENT_DELETE('11')

有人可以提供指针,我可能在这里做错了什么?

谢谢!

你的代码看起来更像SQL Server而不是MySql

应该是这样

Delimiter //
CREATE PROCEDURE BIRD_STRIKE_INCIDENT_DELETE  (_row text)
BEGIN
DELETE FROM bird_strike.incidents WHERE row_names = _row;
END//
delimiter ; 

您可以考虑这种方法。

IF EXISTS(SELECT 1 FROM sys.procedures 
WHERE Name = 'BIRD_STRIKE_INCIDENT_DELETE')
BEGIN
DROP PROCEDURE dbo.BIRD_STRIKE_INCIDENT_DELETE;
END;
else
BEGIN
CREATE PROCEDURE BIRD_STRIKE_INCIDENT_DELETE  (_row text)
BEGIN
DELETE FROM bird_strike.incidents WHERE row_names = _row;
END
END;

最新更新