string j = "Data Source=FUJITSU-PC\\SQLEXPRESS;Initial Catalog=attendance_system;Integrated Security=True";
DataTable dt = new DataTable();
using (SqlConnection cn = new SqlConnection(j))
{
SqlCommand cmd = new SqlCommand("select dbo.faculty_status.username from dbo.faculty_status", cn);
cn.Open();
SqlDataReader dr = cmd.ExecuteReader();
dr.Read();
dt.Load(dr);
cn.Close();
}
int x = dt.Rows.Count;
foreach (DataRow row in dt.Rows)
{
foreach (var item in row.ItemArray)
{
string xx = item.ToString();
}
}
我使用这个代码它很糟糕,但它并没有向我显示我的第一行值 它给我带来了像----
13-24516-2
答案 0 :(得分:1)
我认为问题在于你的阅读方式。 试试这个:
string j = "Data Source=FUJITSU-PC\\SQLEXPRESS;Initial Catalog=attendance_system;Integrated Security=True";
using (SqlConnection cn = new SqlConnection(j))
{
SqlCommand cmd = new SqlCommand("select dbo.faculty_status.username from dbo.faculty_status", cn);
cn.Open();
using (var reader = cmd.ExecuteReader())
{
while(reader.Read())
{
Console.WriteLine(reader["username"]);
}
}
}
让我知道它是否有效!
答案 1 :(得分:0)
它为您提供最后一行。 XX字符串首先加载第一个结果,然后在第二行它用第二行覆盖第一行,只要有行就会继续。
如果你想要显示第一行,你可以使用像:
这样的东西 DataTable dt = new DataTable();
string xx = dt.Rows[0].ToString();
或
foreach (DataRow row in dt.Rows)
{
foreach (var item in row.ItemArray)
{
Console.WriteLine(item.ToString());
}
}
dt.Rows [要检索的行]
答案 2 :(得分:0)
试试这个代码示例: -
SqlCommand cmd = new SqlCommand("select dbo.faculty_status.username from dbo.faculty_status", cn);
DataTable dt = new DataTable();
SqlDataAdapter mda = new SqlDataAdapter(cmd);
mda.Fill(dt);
让我知道它是否有效!