Любые причины, по которым я не могу заменить литерал ISNULL (col, literal) NOT LIKE на col < > литерал, если литерал не содержит символов подстановки?

Локальное хранилище не работало для локальных файлов в IE9 , поэтому я предполагаю, что это все еще имеет место в MS Edge.

Я только что протестировал его в Edge с помощью сервер на localhost, и ваша строка кода работает нормально:

> var something = localStorage.getItem('something');
> undefined

Возможно, это была проблема безопасности в более ранних версиях IE и никогда не обновлялась по мере того, как был разработан браузер.

Хотя, похоже, что localStorage и sessionStorage по-прежнему не работают в Edge для файлов HTML, к которым обращаются, используя протокол file: //.

2
задан Preet Sangha 16 January 2019 в 00:58
поделиться

1 ответ

[1 125] TL; DR; - Да, вы можете заменить его - это (почти) совершенно безопасно.

Более длинная версия:

В SQL Server, если не указано SET ANSI_NULL OFF (и его действительно не следует указывать никогда - обратите внимание, что оно устарело) - любое сравнение чего-либо к null приведет с UNKNOWN, что в основном эквивалентно false для case выражений или where предикатов предложения.

Это означает, что SomeValue <> NULL и SomeValue = NULL и даже NULL = NULL и NULL <> NULL все вернутся UNKNOWN

Хотя я не нашел никаких документов о поведении NULL и оператор LIKE (я искал в документации SET ANSI_NULL, LIKE и NULL и UNKNOWN ) это хорошо известный факт, что поведение null то же самое с оператором like, как и с оператором = - это означает, что NULL LIKE 'some string' также вернет UNKNOWN.

0
ответ дан Zohar Peled 16 January 2019 в 00:58
поделиться
Другие вопросы по тегам:

Похожие вопросы: