【发布时间】:2021-03-22 03:56:44
【问题描述】:
我正在尝试编写一个存储过程以插入到email 表中。在我的email 表中,我有一个名为timestamp 的时间创建列。我不知道时间戳是一个 SQL 关键字。我将如何解决这个问题?谢谢(我不想更改列名,因为我有很多 SQL 语句要编辑)
CREATE PROCEDURE [dbo].[btbSe]
@SenderId int,
@SqlReceiverId int,
@EmailSubject varchar(max),
@EmailBody varchar(max),
@DateTime varchar(50)
AS
INSERT INTO Emails (SenderId, ReceiverId, EmailSubject, EmailBody, Timestamp)
VALUES (@SenderId, @SqlReceiverId, @EmailSubject, @EmailBody, @DateTime, GETDATE())
RETURN 0
【问题讨论】:
-
是的,当然,理想情况下,您在 SQL Server 中创建的对象不应与保留关键字命名相同 - 但实际上,很多人都这样做。只需将 Timestamp 这个词放在方括号中 - 即。 [时间戳] - 你会没事的
-
顺便说一句,你还有很多 SQL 语句要编辑.....所以也许改变列名是一个值得练习的练习。
-
感谢您的帮助,谢谢!
标签: sql stored-procedures timestamp sql-insert