我想通过添加 1 个月来更新数据库中的月份,但我不知道如何在以下存储过程查询中添加月份我不擅长 sql,请检查它
ALTER PROCEDURE [dbo].[ChangePassword]
@password varchar(20),
@epassword varchar(50),
@username char(32)
AS
UPDATE AccountRole
SET Password = @password,
EPassword = @epassword
WHERE UserName = @username
UPDATE AccountRole
SET ExpiryDate="?"
这里我必须写什么才能在查询执行时增加 1 个月
最佳答案
要将 DATETIME
或 DATE
类型的现有值增加一个月,请使用:
UPDATE AccountRole
SET ExpiryDate = DATEADD(MONTH, 1, ExpiryDate)
正如 Oleg 正确指出的那样,假设您的两个 UPDATE
语句具有相同的 WHERE
条件 (WHERE UserName = @username
),那么你可以在一个UPDATE
中完成此操作:
UPDATE dbo.AccountRole
SET Password = @password,
EPassword = @epassword,
ExpiryDate = DATEADD(MONTH, 1, ExpiryDate)
WHERE UserName = @username
关于sql - 月份增量查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8665389/