我有一个表格,其中包含有关联系人帐户余额的信息。它包含记录他们有史以来第一张发票的日期以及最后一张发票的日期以及当前余额的栏。更正SQL语法以检查更新过程中是否存在空值
如创建的每个新的发票,其意图是该表通过简单的存储过程沿着线进行更新:
CREATE PROCEDURE UpdateContactFinancialInformation
@ContactId int,
@InvoiceDate date,
@Amount money
AS
UPDATE Contacts.ContactsFinancialInformation
SET LastInvoiceDate = @InvoiceDate,
CurrentBalance = CurrentBalance + @Amount
WHERE ContactId = @ContactId
当一个新的接触被创建用于它们在创建默认条目ContactsFinancialInformation
表和FirstInvoiceDate
列将具有默认值NULL
。
我想在上面的基本SQL语句中添加一个检查,以便如果FirstInvoiceDate
列为NULL,那么它也将被设置为传入存储过程的参数@InvoiceDate
。
请问这样做最有效的方法是什么?
谢谢我在这方面甚至没有考虑过凝聚。 – 2013-03-12 15:41:18