Sql server 我正在执行过程,不接受任何来自我的日期,当我试图给datetime变量一个GETDATE()时,它会告诉我靠近';的错误';
这就是程序Sql server 我正在执行过程,不接受任何来自我的日期,当我试图给datetime变量一个GETDATE()时,它会告诉我靠近';的错误';,sql-server,stored-procedures,Sql Server,Stored Procedures,这就是程序 ALTER PROCEDURE [dbo].[InsertCustomer] @firstName NVARCHAR(50), @lastName NVARCHAR(50), @address NVARCHAR(50), @state NVARCHAR(50), @creditLimit smallmoney, @email NVARCHAR(50), @customerSince smalldatetime AS BE
ALTER PROCEDURE [dbo].[InsertCustomer]
@firstName NVARCHAR(50),
@lastName NVARCHAR(50),
@address NVARCHAR(50),
@state NVARCHAR(50),
@creditLimit smallmoney,
@email NVARCHAR(50),
@customerSince smalldatetime
AS
BEGIN
INSERT Customers(
FirstName ,
LastName ,
_Address ,
States ,
CustomerSince ,
CreditLimit ,
Email )
VALUES (@firstName ,
@lastName ,
@address ,
@state ,
@customerSince ,
@creditLimit ,
@email)
END;
这是执行-->
你能试着像这样调用proc吗:
DECLARE @dt DATETIME = GETDATE()
EXECUTE InsertCustomer
'Liza',
'Tober',
'46 White Second Blvd.',
'Louisiana',
670,
'Liza@visualStudio.com',
@dt
你在评论中提到一个错误,你是这样尝试的吗?如果是,错误是什么
关键是,不能在过程调用中使用函数(如
GETDATE()
)。因此,为了使用该值,您必须在变量中捕获函数的结果 我认为您必须首先声明一个变量,用getdate()
赋值,并在过程调用中使用该变量当我这样做@Now DATETIME=getdate()时,它会给我一个错误“附近的语法不正确”(”,非常感谢它解决了我的问题,但我有一个问题-->我不能使用DATETIME()在我的存储过程实现中?你说的“datetime()”是什么意思?我不知道这样一个函数…如果你指的是数据类型datetime
,是的,你可以使用它…GETDATE()同样,如果这个答案解决了你的问题,你可以接受这个答案。它将帮助未来的访问者。
DECLARE @dt DATETIME = GETDATE()
EXECUTE InsertCustomer
'Liza',
'Tober',
'46 White Second Blvd.',
'Louisiana',
670,
'Liza@visualStudio.com',
@dt