我想要一個的ErrorMessage列添加到我的AfterParse_CA_Events。所以我可以看到我的表中缺少哪些數據。撰寫的ErrorMessage在TSQL
CREATE TABLE [dbo].[AfterParse_CA_Events](
[EventID] [varchar](32) NOT NULL,
[MessageID] [bigint] NOT NULL,
[cdtprFunction] [varchar](32) NULL,
[CreationDate] [datetime] NULL,
[MsgDefIdr] [varchar](32) NULL,
[CFI] [varchar](50) NULL,
[MndtryVlntryEvtTp] [varchar](32) NULL,
[EventProcessingType] [varchar](4) NULL,
[EventType] [varchar](4) NULL,
[RecordDate] [date] NULL,
[EffectiveDate] [date] NULL,
[DueBillRdmDate] [date] NULL,
[OldQuantity] [varchar](32) NULL,
[PaymentDate] [date] NULL,
[LastChangeBy] [varchar](50) NULL,
[LastChangeDate] [datetime] NULL,
[EventDescription] [varchar](max) NULL,
[CUSIP] [varchar](32) NULL,
[MQ_DateTime] [datetime2](7) NULL,
[Symbol2] [varchar](32) NULL,
[AssetClass] [varchar](5) NULL,
[AssetType] [varchar](5) NULL,
[DividendType] [varchar](5) NULL,
[ExDividendDate] [date] NULL,
[LSCI_DateOfRecord] [date] NULL,
[RoundingDesc] [varchar](4) NULL,
[CompleteStatus] [varchar](4) NULL,
[ErrorMessage] [varchar](100) NULL,
CONSTRAINT [PK_AfterParse_CA_Events] PRIMARY KEY CLUSTERED
(
[EventID] ASC,
[MessageID] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]
這裏是我所有的專欄。我要檢查LSCI_DateOfRecord,CFI,RecordDate,EFFECTIVEDATE,DueBillRdmDate,PAYMENTDATE,CUSIP,Symbol2和除息日。如果任一列缺少數據(空),我想在ErrorMessage列中顯示列名。
我已經寫了一個LSCI_DateOfRecord的簡單查詢,但是我不知道如何在有多列缺失數據時編寫錯誤消息。
如果LSCI_DateOfRecord和DueBillRdmDate都爲null,我希望ErrorMessage看起來像'LSCI_DateOfRecord DueBillRdmDate missing'。
我的代碼:
--build the ErrorMessage for AfterParse_CA_Events
declare @errorMessge varchar(1000)
select case
when ace.LSCI_DateOfRecord IS NULL then ' LSCI_RecordDate'
--when ace.DueBillRdmDate IS null then ' DueBillRdmDate'
else 'good'
end as ErrorMessage
,*
from AfterParse_CA_Events ace
可以在任何一個可以幫助我與此有關。
你的答案是優秀的。非常感謝scsimon。:-) – Rachel
不用擔心在所有@Rachel – scsimon