Оператор SQLite Select ничего не возвращает - C # - PullRequest
0 голосов
/ 04 мая 2011

Довольно простая проблема, у меня есть таблица в базе данных, которая содержит один столбец и четырнадцать строк.

При попытке вернуть все строки в базе данных я пытаюсь сделать следующее:

command = new SQLiteCommand("SELECT Value FROM Currency", connection);

Тем не менее, когда я смотрю на количество затронутых результатов (и на отсутствие элементов в моем массиве), я замечаю следующее:

Huh

Очевидно, там ничего нет, я даже проверил два отдельных инструмента, которые подтверждают, что данные там. Я выполняю это неправильно? Я просто хочу перебрать возвращенные значения и сохранить их в массиве.

Спасибо за ваше время! Изменить:

решение!

int i = 0;
while (dReader.Read())
{  
    _data[i] = Convert.ToSingle(dReader[0]);
    i++;     
}

Это прекрасно работает:)

Ответы [ 2 ]

4 голосов
/ 04 мая 2011

SqlDataReader.RecordsAffected не затрагивается для запросов выбора.

Получает количество строк, измененных, вставленных или удаленных при выполнении оператора Transact-SQL.

РЕДАКТИРОВАТЬ:

while ( dReader.Read() )
{
    Console.WriteLine("Value " + dReader[0]);
}
2 голосов
/ 04 мая 2011

Разве вы не должны делать

 while ( dReader.Read() )
{
    ....
}

, чтобы перебрать ваш набор результатов?

...