我有要升级的程序 它在插入数据表之前为客户端插入新记录,然后插入它是否检查此客户端的新记录是否在本月插入,如果是则不插入新记录用IF语句插入程序
我想更新它,所以它会检查客户端StatusID在(1,2,6)。到目前为止,我有这个
alter PROCEDURE dbo.InsertPickup
@ClientID int, --Required ClientID and PickupDate
@PickupDate date
AS
IF NOT EXISTS (SELECT * FROM Pickup
WHERE ClientID = @ClientID
AND MONTH(PickupDate) = MONTH(@PickupDate)
AND YEAR(PickupDate) = YEAR(@PickupDate))
if exists (select * from clients where statusid in (1,2,6))
INSERT INTO Pickup (ClientID, PickupDate)
VALUES (@ClientID, @PickupDate)
然而,这是不对的它仍然插入记录,如果与statusid = 5或3或4