【发布时间】:2016-03-06 05:13:58
【问题描述】:
我想从 SQL Server 数据库中读取数据并将其存储到一个数组中。
首先,我必须获取每一行并将其存储到一个二维数组中。
con.Open();
SqlCommand cmd = new SqlCommand("SELECT * FROM tbl_Subjects WHERE USN IN(SELECT USN FROM tbl_Student WHERE Semester='" + DropDownList1.Text + "')");
SqlDataReader rs;
rs = cmd.ExecuteReader();
while (rs.Read())
{
for (int k = 1; k < 10; k++)
{
g = k - 1;
num = rs[0].ToString();
read[g] = Convert.ToInt32(num);
}
这是我到目前为止所做的。我不知道如何直接将其分配给 2D 数组。因此使用一维数组并认为我可以稍后复制它。
编辑:
我已按照 Hari Prasad 建议的步骤进行操作,
con.Open();
SqlCommand cmd = new SqlCommand("SELECT * FROM tbl_Subjects WHERE USN IN(SELECT USN FROM tbl_Student WHERE Semester='" + DropDownList1.Text + "')",con);
SqlDataReader rs;
rs = cmd.ExecuteReader();
while (rs.Read())
{
int j = 0;
for (int i = 0; i < rs.FieldCount; i++)
{
arr[i, j] = int.Parse(rs.GetString(0));
}
}
con.Close();
rs.Close();
在这之后我得到了一个 FormatException。 “输入字符串的格式不正确。”
【问题讨论】:
-
SQL Injection alert - 您应该不将您的 SQL 语句连接在一起 - 使用 参数化查询 来避免 SQL 注入
标签: c# arrays multidimensional-array