Это на самом деле NULL или просто пусто?
SELECT * FROM TABLE WHERE ITEM =''
Этот запрос проверит, является ли поле строки пустым
SELECT * FROM TABLE WHERE ITEM IS NULL
и проверит, поле строки равно null
Этот ответ дает действительно хорошее представление об их разнице:
Нет, SqlCommand никогда не пытается закрыться/избавиться соединение.
Нет, объект соединения не будет расположен, пока Вы не расположите его явно. Но моя рекомендация состоит в том, чтобы использовать блоки использования каждый раз, когда Вы можете.
@milot
Но моя рекомендация состоит в том, чтобы использовать блоки использования каждый раз, когда Вы можете.
Используя Использование Блоков хорошо, но бесполезен, когда работа с не Объекты IDisposable и таким образом, это может сбивать с толку, если Вы используете Используя Блоки где-нибудь.
Будьте осторожны, так как Ваши объекты не могли бы, будучи Расположенным, если они не делают реализаций IDisposable.
Надеюсь, это поможет.
Это не закрывает соединение, необходимо или закрыть его сами или поместить его в его собственное использование statment.
Также вот подсказка для создания Вашего using
более читаемые блоки:
using (var conn = new SqlConnection(connString))
using (var cmd = new SqlCommand())
{
cmd.Connection = conn;
}