2016-05-06 12 views
0

Я получаю это исключение:Почему мой SQL-код не работает?

Данных не существует для строки/столбца.

Однако информация в избранном правиле. Я не знаю, почему это продолжает терпеть неудачу.

string SQL = "SELECT htmlCodeBlock FROM HTML WHERE htmlID = 1"; 
command.CommandText = SQL; 
command.Connection = conn; 
reader = command.ExecuteReader(); 
codeBlock = reader["htmlCodeBlock"].ToString(); 
reader.Close(); 

ответ

4

Не получается, что вы вызываете Read() на DataReader, прежде чем пытаться читать данные с него.

Retrieving Data Using a DataReader

+0

Спасибо, я знал, что чего-то не хватает! – sydluce

1

Прошли ли вы какие-либо чтения по использованию считывателей данных? Казалось бы, нет. Вы должны позвонить Read, прежде чем фактически прочитать данные строки. Вы звоните Read один раз, чтобы добраться до первой строки. Вы вызываете Read второй раз, чтобы добраться до второй строки. И т. Д.

Кроме того, если вы намерены извлечь одно значение, тогда вы, вероятно, должны вместо этого называть ExecuteScalar, что фактически возвращает одно значение. Просто имейте в виду, что он вернет null (в отличие от DBNull.Value), если нет значения для извлечения.

Смежные вопросы