【发布时间】:2019-11-17 19:28:59
【问题描述】:
我想检索最后插入的数据记录。我研究并了解到我必须使用 SELECT LAST_INSERT_ID()。我试过了,但没有工作。所以我在下面提供了我的代码
//Inserting into Student Table
string query = "INSERT INTO student(name) Values('" + txtboxname.Text + "' )";
// query= "SELECT LAST_INSERT_ID()";
// query += " SELECT SCOPE_IDENTITY()";
//Inserting into course table
string query1 = "INSERT INTO course(title) Values('" + txttitle.Text + "')";
// query1 = " SELECT LAST_INSERT_ID()";
//Execute Insert Statement queries
MySqlCommand command = new MySqlCommand(query, con);
command.ExecuteNonQuery();
command = new MySqlCommand(query1, con);
command.ExecuteNonQuery();
//Close and dispose off connections
command.Dispose();
con.Close();
//预览页面
string query1 = "SELECT (name) FROM student WHERE ID = id";
string query2 = "SELECT (title) FROM course WHERE ID = id";
MySqlCommand command = new MySqlCommand(query1, con);
lblname.Text = command.ExecuteScalar().ToString();
command = new MySqlCommand(query2, con);
lbltitle.Text = command.ExecuteScalar().ToString();
con.Close();
【问题讨论】:
-
你从
SELECT LAST_INSERT_ID()得到了什么? -
要获取最后插入记录的主键值吗?表的主键列是否为 AutoIncrement?
-
仍然只返回数据库中的第一条记录
-
是的,主键都是自动递增的
-
正如下面答案中的建议,您可以选择主键列的最大值以获取最新插入的主键值。为什么要选择最新的记录ID值?
标签: c# mysql asp.net-mvc