2011-05-03 51 views
0

非常简单的问题,我在包含一列和十四行的数据库中有一个表。SQLite Select语句不会返回任何内容 - C#

当试图返回的所有行中我尝试以下数据库:

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

然而,当我看到结果的影响金额(在我的数组缺少的元素),我注意到了以下:

Huh

显然没有什么在那里,我甚至与确认的数据是有两个不同的工具进行检查。我是否执行不正确?我只是想遍历返回的值并将它们存储在一个数组中。

谢谢你的时间! 编辑:

解决方案!

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

这工作得很好:)

+0

为什么要将选择命令放入事务中? – 2011-05-03 21:21:07

+0

来自现有代码的模板,并不意味着在那里。 – 2011-05-03 21:23:00

回答

4

SqlDataReader.RecordsAffected不受影响为select查询。

获取的行数发生变化, 插入,或通过 的Transact-SQL语句执行删除。

编辑:

while (dReader.Read()) 
{ 
    Console.WriteLine("Value " + dReader[0]); 
} 
+0

啊,可能应该阅读文档。不解释为什么没有记录被返回,虽然=/ – 2011-05-03 21:01:01

+0

是的。您需要像Ryan指出的那样调用Read()。 – 2011-05-03 21:05:43

+0

我已经改变了。仍然,我找不到解释为什么select语句不起作用 – 2011-05-03 21:21:02

2

你不应该通过你的结果集做一个

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

循环?

+0

变了,谢谢。 – 2011-05-03 21:02:09

相关问题