我这里有一个包含3个字段的磁带表:
胶带
TapesID Title Qty
T1 BatDog 3
T2 UnderCat 2
T3 IronMouse 1
T4 Boys Zone 1
T5 RoboCat 1
我想创建一个存储过程,通过输入磁带标题作为过程的参数来提取并显示磁带的特定id。该过程应称为list_tspec_id。
你可以帮助我吗?我很难用这个...这是我的代码,但它不对:
create procedure tapesid
@columnname varchar
AS
begin
select @columnname from tapes
end
exec tapesid 'title'
答案 0 :(得分:1)
您已将此标记为MySQL,因此......这是一个存储过程,但您的示例中不清楚您真正想要它做什么或为什么。
作为参数传递到存储过程的变量不会在它们前面使用“@”。
DELIMITER $$
CREATE PROCEDURE list_tspec_id (IN my_title VARCHAR(254))
BEGIN
SELECT TapesID, Title, Qty FROM Tapes WHERE Title = my_title;
END $$
DELIMITER ;
...然后
mysql> CALL list_tspec_id('BatDog');