powered by simpleCommunicator - 2.0.56     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / SqlReader and NULL value
4 сообщений из 4, страница 1 из 1
SqlReader and NULL value
    #38634913
tasha klemer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Доброго времени суток уважаемые форумчане...
Не могу справиться с проблемой проверки записей выдаваемых через SqlReader и являющиеся NULL значением.
проверку делаю таким образом
Код: vbnet
1.
2.
3.
4.
5.
If reader1.GetString(8) Is DBNull.Value Then
                    Ex_Wb1.Cells(i, 9).value() = 0
                Else
                    Ex_Wb1.Cells(i, 9).value() = reader1.GetString(8)
                End If



но оно не работает для таких записей т.к. это не строка и не число а тип Null ...как правильно обратиться по типу к таким строкам, т.е. обратиться к 8 полю селекта???
...
Рейтинг: 0 / 0
SqlReader and NULL value
    #38635012
tasha klemer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Код: vbnet
1.
2.
3.
4.
5.
 If IsDBNull(reader1.GetValue(8)) = True Then
                    Ex_Wb1.Cells(i, 9).value() = ""
                Else
                    Ex_Wb1.Cells(i, 9).value() = reader1.GetString(8)
                End If



Модератор: Тема перенесена из форума "Visual Basic".
...
Рейтинг: 0 / 0
SqlReader and NULL value
    #38635035
Pallaris
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tasha klemer
Код: vbnet
1.
2.
3.
4.
5.
 If IsDBNull(reader1.GetValue(8)) = True Then
                    Ex_Wb1.Cells(i, 9).value() = ""
                Else
                    Ex_Wb1.Cells(i, 9).value() = reader1.GetString(8)
                End If




Ну тогда уж проще
[SRC VB]
Ex_Wb1.Cells(i, 9).value() = reader1.GetValue(8).ToString()
[/SRC]
...
Рейтинг: 0 / 0
SqlReader and NULL value
    #38635043
bazile
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tasha klemer, а я бы написал extension метод чтобы было легко обращаться к колонке по имени и указывать значение по умолчанию для NULL значения:
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
Public Module DataReaderExtensions

    <Extension()> _
    Public Function GetString(ByVal reader As DbDataReader, ByVal columnName As String, Optional ByVal defValue As String = Nothing) As String

        Dim columnIdx As Integer = reader.GetOrdinal(columnName)
        Return IIf(reader.IsDBNull(columnIdx), defValue, reader.GetString(columnIdx))

    End Function

End Module


Использование:
Код: vbnet
1.
Ex_Wb1.Cells(i, 9).Value = reader1.GetString("ИмяКолонки", "")
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / SqlReader and NULL value
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]