I am working on a stored procedure which shreds an XML document. One of the child elements in the records being processed can sometimes be marked with the xsi:nil="true" attribute. Other times, it can contain a dateTime. I’m trying to insert a string into a column of my table which depends on whether or not this element has a value. For example:
[Status] = CASE WHEN (Rt.Item.value('(./Date)[1]', 'nvarchar(max)') = '') THEN N'SUBMITTED' ELSE N'PROCESSED' END
Unfortunately, this doesn’t seem to be working. What’s the correct to check if an element has a value in SQL Server?
Generally:
If the association of the
"xsi"prefix to the appropriate namespace isn’t registered (the way to do this is implementation-specific and you need to check how this is to be done in your situation), one still can use: