用于从表中获取行的SQL Server存储过程

时间:2012-08-30 11:44:42

标签: sql-server tsql stored-procedures

我正在尝试创建一个存储过程来从我的数据库表中检索行...但看起来我在输入查询时遗漏了一些东西。

这是我的存储过程:

CREATE PROCEDURE [dbo].[p_GetLeaveRecord_LMS]
    -- Add the parameters for the stored procedure here
    @LeaveType varchar(50),
    @IdEmployee int,
    @DateFrom date,
    @DateTo date,
    @Reason nvarchar(MAX)
AS
BEGIN
    -- SET NOCOUNT ON added to prevent extra result sets from
    -- interfering with SELECT statements.
    SET NOCOUNT ON;

    SElECT * FROM cor_leave
    (
    id_leave_type,
    id_employee,
    dt_from,
    dt_to,
    txt_reason
    )
    Values 
    (
    @LeaveType,
    @IdEmployee,
    @DateFrom,
    @DateTo,
    @Reason
    )      
END

如果有人能给我更好的答案,让程序正确。

我是数据库的初学者。

感谢

2 个答案:

答案 0 :(得分:2)

您的select语句无效SQL。它看起来更像是一个修改过的INSERT语句。

应该是:

SELECT 
  id_leave_type,
  id_employee,
  dt_from,
  dt_to,
  txt_reason
FROM cor_leave

答案 1 :(得分:2)

SELECT @LeaveType=id_leave_type, @IdEmployee`=id_employee,@DateFrom=dt_from,@DateTo=dt_to,@Reason=txt_reason FROM cor_leave