如何从DataTable中的最后一行检索值

本文关键字:一行 检索 最后 DataTable | 更新日期: 2023-09-27 18:29:33

从Data表中最后插入的行检索值时遇到问题。我有一个登录表单,表中插入的值有ID(int,一个自动递增的值)、userID(int)、logintime(smalldatetime)和logouttime(small datetime)。用于登录按钮内部的代码,因此插入除注销时间之外的所有值

DateTime t1 = DateTime.Now;
objbal2.insertLoginTime(s, t1);

在注销按钮中,我正在更新表,所以我必须检索最后一行的值。我正在参考ID值和userID更新表。我可以使用此查询获取值吗?但我不知道怎么做?

SELECT COLUMN FROM TABLE ORDER BY COLUMN DESC

提前感谢

如何从DataTable中的最后一行检索值

如果必须读取最后一行的值,则

DataRow lastRow = yourTable.Rows[yourTable.Rows.Count-1];

将返回最后一排。并且您可以从中读取值。

我的第二个猜测是,通过datatable,您指的是sql server中的表。

然后,只要进行小的修改,您的查询也可以。

SELECT TOP 1 COLUMN FROM TABLE ORDER BY COLUMN DESC
var dt = new DataTable();
dt.AsEnumerable().Last();

dt.AsEnumerable()返回IEnumerable<DataRow>

您可以从会话中获得值,然后根据更改更新数据库

DateTime t2 = DateTime.Now;
DataRow Row = Mylagin_dataTable.Rows.Count-1
Row[0]["LogoutTime"] = t2 ;

如果您的ID在会话中,则使用以下

DateTime t2 = DateTime.Now;
DataRow Row = Mylagin_dataTable.Select("LoginID='"+ HttpContext.Current.Session["loginID"] + "'");
Row[0]["LogoutTime"] = t2 ;

在应用程序退出事件上执行以下查询,这将完成

string _query = string.Format("update top 1 SessionTable set LogOutTime = {0} where UserID = {1} order by ID desc", DateTime.Now, UserID);