我有一个程序,登录用户可以上传/下载文件。我想在用户登录时进行查询,并将数据存储在数组中。 这是我的代码:
string query = "SELECT * FROM Login;";
var valami = new DataTable();
var con = new SqlConnection(@"Data Source=(LocalDB)\MSSQLLocalDB;AttachDbFilename=C:\Users\Roland\Desktop\IBCONTROLL\BIZT.MENTÉS\program_1.7\db_connect_ver_1\login.mdf;Integrated Security=True");
var sda = new SqlDataAdapter(query, con);
sda.Fill(valami);
var result = new string[valami.Columns.Count];
DataRow dr = valami.Rows[1];
for (var i = 0; i < dr.ItemArray.Length; i++)
{
result[i] = dr[i].ToString();
}
foreach (var t in result)
{
Console.WriteLine(t);
}
问题在于这是一个1维数组,但我需要一个二维数组,稍后将其用作表格。
你能帮我解决一下这段代码吗?
答案 0 :(得分:0)
您可以存储DataTable
,而不是将其存储为二维数组。它有很多好处。您不仅可以按列名访问数据(在二维数组中无法访问),而且还可以在DataTable
中获取与您触发的查询相关的所有元数据。请注意,存储此元数据的内存开销很小。
要访问给定元素,您可以撰写DataTable.Rows[rowNumber][columnNumber]
或DataTable.Rows[rowNumber][columnName]