gpt4 book ai didi

c# - 获取最近添加的记录的主键并作为外键插入到另一个表中

转载 作者:行者123 更新时间:2023-11-29 06:13:21 26 4
gpt4 key购买 nike

我使用 asp.net 作为前端,MySQL 作为后端。我有两个表“注册”和“用户”。我有一张注册表,因为我有注册详细信息和登录详细信息。当用户单击注册时,注册详细信息将保存到“Registration”,登录详细信息将使用表 Registration 的外键 Reg_Id 保存到“User”。

这是我的代码:

DateTime dob = DateTime.Parse(txtDob.Text);
string formattedDate = dob.ToString("yyyy-MM-dd");

string qry = "insert into Registration(First_Name,Last_Name,Dob,Place,Zip,Phone_Number)values(@fname,@lname,@dob,@place,@zip,@phone);SELECT SCOPE_IDENTITY()";


MySqlCommand cmd = new MySqlCommand(qry, Connection.get());

cmd.Parameters.AddWithValue("@fname", txtFname.Text);

cmd.Parameters.AddWithValue("@lname", txtLname.Text);

cmd.Parameters.AddWithValue("@dob", formattedDate);

cmd.Parameters.AddWithValue("@place", txtPlace.Text);

cmd.Parameters.AddWithValue("@zip", txtZip.Text);

cmd.Parameters.AddWithValue("@phone", txtPhone.Text);

cmd.ExecuteNonQuery();

int modified = (int)cmd.ExecuteScalar();

Connection.close();

string qryToUser = "insert into User(User_Name,Password)values(@user,@password)";

MySqlCommand cmd1 = new MySqlCommand(qryToUser, Connection.get());

cmd.Parameters.AddWithValue("@user", txtUsername.Text);

cmd.Parameters.AddWithValue("@password", txtPasswordConfirm.Text);

cmd1.ExecuteNonQuery();

我无法使用 cmd.ExecuteScalar() 方法获取 REG_Id。还有其他方法还是我做错了什么???请有人帮助我

最佳答案

您可以只使用 LastInsertedId 字段:

cmd.ExecuteNonQuery();
long modified = cmd.LastInsertedId;

关于c# - 获取最近添加的记录的主键并作为外键插入到另一个表中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37225336/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com