SQL Server不正确的语法味精102

时间:2018-12-02 17:14:08

标签: sql sql-server

CREATE PROCEDURE dbo.Register 
    (@Name NVARCHAR(50),
     @Email NVARCHAR(50),
     @Password NVARCHAR(50),
     @Created DATETIME, )
AS
BEGIN
    INSERT INTO [dbo].[Register] (Name, Email, Password, Created)
    VALUE (@Name, @Email, @Password, GETDATE())
END
GO

我不断收到这些错误消息:

  

消息102,级别15,状态1,过程寄存器,第7行[批处理开始第0行]
  ')'附近的语法不正确。

     

消息102,级别15,状态1,过程寄存器,第12行[批处理开始第0行]
  “值”附近的语法不正确。

有人可以帮忙吗?

2 个答案:

答案 0 :(得分:0)

它将是values而不是value

insert into [dbo].[Register] (Name, Email, Password, Created)
values (@Name, @Email, @Password, GETDATE())

答案 1 :(得分:0)

您的存储过程中几乎没有问题。

首先,正如其他人回答的那样,它应该是“价值”而不是价值。但是,解决此问题之后,您将获得很少的其他编译器错误。您已额外添加了几个括号和逗号。请参阅下面的存储过程工作副本。希望这会有所帮助。

CREATE PROCEDURE dbo.Register 
    @Name NVARCHAR(50),
    @Email NVARCHAR(50),
    @Password NVARCHAR(50),
    @Created DATETIME
AS
BEGIN
    INSERT INTO [dbo].[Register] (Name, Email, Password, Created)
    VALUES (@Name, @Email, @Password, GETDATE())
END