私は請求書番号の存在のためのストアドプロシージャを書いています。私はパラメータとして請求番号を渡します。私は新しい請求書を作成し、ユーザーが既に生成された請求書の番号を入力すると、この照会で請求書の詳細を戻すことを望みます。一方、その請求書が更新モードで開かれている場合、その請求書は何も返されません。私はたくさん試して、更新モードが動作しているが、新しい請求書の場合も同じ応答を与えている。親切に助けてください。 以下は私のSP同じ請求書の更新ではなく、新しい請求書生成で既存の請求書番号を検証する方法は?
DECLARE @billID AS INT;
SELECT @billID = billID
FROM dbo.eInvoice_tbl_billInfo
WHERE billNumber = 'GW-090'
PRINT @billID
IF @billID = NULL
BEGIN
PRINT 'new'
SELECT billNumber
FROM dbo.eInvoice_tbl_billInfo
WHERE billNumber = 'GW-090'
END
ELSE
BEGIN
PRINT 'update'
IF NOT EXISTS (SELECT billNumber
FROM dbo.eInvoice_tbl_billInfo
WHERE billNumber = 'GW-090'
AND billID != 154)
BEGIN
SELECT billNumber
FROM dbo.eInvoice_tbl_billInfo
WHERE billNumber = 'GW-090'
AND billID != 154
END
END
あなたの助けに感謝します。
IF @billID is NULL
代わりにそれはSQLの比較演算子でnullをどのように扱うかに尽きる
IF @billID = NULL
の:
あなたは、新しいケースでbillID = NULLがここで満たされているかどうかを確認しましたか? – Malcolm