Sql server I';我正在尝试向存储过程传递一个日期参数。但是它';他对我不起作用。它';It’他正在向我返回一个错误。我该怎么修?

Sql server I';我正在尝试向存储过程传递一个日期参数。但是它';他对我不起作用。它';It’他正在向我返回一个错误。我该怎么修?,sql-server,date,parameters,Sql Server,Date,Parameters,我正在尝试向存储过程传递日期参数。但这对我不起作用。它向我返回了一个错误。我该怎么修 这是我的存储过程 ALTER PROCEDURE [dbo].[cadastrarFuncionario] @RG nvarchar(50) , @Nome_Funcionario nvarchar(100) , @Data_Nascimento date AS BEGIN INSERT INTO Tabela_Funcionario(RG, Nome_Funcionario,

我正在尝试向存储过程传递日期参数。但这对我不起作用。它向我返回了一个错误。我该怎么修

这是我的存储过程

ALTER PROCEDURE [dbo].[cadastrarFuncionario]
    @RG nvarchar(50) ,
    @Nome_Funcionario nvarchar(100) ,
    @Data_Nascimento  date
AS
BEGIN
    INSERT INTO Tabela_Funcionario(RG, Nome_Funcionario, Data_Nascimento) 
    VALUES(@RG, @Nome_Funcionario, @Data_Nascimento)
END
当我试图通过像“1996-05-05”这样的日期时。我得到了这个错误:


您只需将日期文字放入单引号中即可:

EXEC @return_value = [dbo].[cadastrarFuncionario]
    @RG = N'19',
    @Nome_Funcionario = N'Paulo J',
    @Data_Nascimento = '1996-05-05'    -- put SINGLE quotes around your date literal!

你需要把日期文字放在单引号里
@Data\u Nascimento='1996-05-05'
@PauloJ:如果这个答案帮助你解决了问题,那么请(尽快)。这将表达你对那些花自己的时间帮助你的人的感激之情。