【发布时间】:2014-07-08 13:34:56
【问题描述】:
您好,我有包含用户数据的数据库,我需要使用 cyklus 将这些数据放入 C# 中的数组
这段代码
MySqlCommand cmd = connection.CreateCommand();
cmd.CommandText = "SELECT * FROM usersdata WHERE user_id='1'";
MySqlDataReader dataReader = cmd.ExecuteReader();
int i = 0;
while (dataReader.Read())
{
userdata[i] = Convert.ToInt32(dataReader[i]);
i++;
}
dataReader.Close();
但是这项工作只有一个,对于 id 0 after nothing ,有人帮助我吗?非常感谢
我需要数据读取器读取所有列并将第 0 列的信息提供给 userdata[0],将第 1 列的信息提供给 userdata[1] 等等......
【问题讨论】:
-
您确定您的
user_id='0'会返回数据吗?而且您不需要i并增加它。.Read方法逐行读取您的数据。在您的示例中,这仅读取第一行的第一列,第二行的第二列,第三行的第三列等 ..您也可以使用GetXXX()SqlDataReader的方法。 -
不是您问题的答案,但您应该使用
dataReader.GetInt32(i)而不是Convert.ToInt32(dataReader[i])。 -
这段代码将从第 0 行读取第 0 列,然后从第 1 行读取第 1 列,从第 2 行读取第 2 列......你想要它做什么?从每一行读取一列?还是读取每一行的所有列?
-
从 user_id='1' 的行中读取所有列
-
您是否希望从数据库中返回准确一行?你期待什么专栏?它们的类型是什么?