问题描述
我正在从一本书中学习 sql,我正在尝试编写一个存储过程,但我不相信我做对了.以下方式在 Microsoft SQL 中无效吗?如果不是,它什么时候有效,如果有的话?
I'm learning sql from a book and I'm trying to write a stored procedure but I don't believe that I'm doing it correctly. Is the following way not valid in Microsoft SQL? If not, when is it valid, if ever?
create procedure dept_count(in dept_name varchar(20), out d_count integer) begin select count(*) into d_count from instructor where instructor.dept_name=dept_count.dept_name end
我收到以下错误
消息 156,级别 15,状态 1,过程 wine_change,第 1 行关键字in"附近的语法不正确.
Msg 156, Level 15, State 1, Procedure wine_change, Line 1 Incorrect syntax near the keyword 'in'.
推荐答案
T-SQL
/* Stored Procedure GetstudentnameInOutputVariable is modified to collect the email address of the student with the help of the Alert Keyword */ CREATE PROCEDURE GetstudentnameInOutputVariable ( @studentid INT, --Input parameter , Studentid of the student @studentname VARCHAR (200) OUT, -- Output parameter to collect the student name @StudentEmail VARCHAR (200)OUT -- Output Parameter to collect the student email ) AS BEGIN SELECT @studentname= Firstname+' '+Lastname, @StudentEmail=email FROM tbl_Students WHERE studentid=@studentid END