gpt4 book ai didi

c# - 尝试使用 INSERT 方法但不起作用

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

我正在尝试在我的 studentHelperClass 中使用 insert 方法,我正在尝试通过单击表单上的按钮来激活它,我不知道如何操作让它与文本框一起工作,所以如果有人可以帮忙,那就太好了。

这是我的方法:

public static void insertStudent()
{
MySqlConnection conn = connection();
conn.Open();
MySqlCommand cmd = new MySqlCommand();
cmd.Connection = conn;
string myInsertSQL = "INSERT INTO person(personID) ";
cmd.Prepare();
myInsertSQL += "VALUES (@personID)";
cmd.Parameters.AddWithValue("@personID", "123345667788");
prevID(conn, cmd);
}

这是我的表格:

private void btnInsert_Click(object sender, EventArgs e)
{
studentHelperClass.insertStudent();
}

编辑:

private static void prevID(MySqlConnection conn, MySqlCommand cmd)
{
conn.Open();
cmd.ExecuteNonQuery();
long studentNumber = (long)cmd.LastInsertedId;
Console.Write("previous id {0} ", studentNumber);
Console.ReadLine();
conn.Close();
}

最佳答案

考虑到这些信息,假设您的 prevId(conn,cmd) 正在调用 ExecuteNonQuery,您仍然需要将 cmd.CommandText 设置为等于您的 myInsertSql (正如其他答案所指出的那样)。

不过要回答你的问题,

private void btnInsert_Click(object sender, EventArgs e)
{
studentHelperClass.insertStudent(studentIdTextBox.Text);
}

public static void insertStudent(string studentId)
{
MySqlConnection conn = connection();
conn.Open();
MySqlCommand cmd = new MySqlCommand();
cmd.Connection = conn;
string myInsertSQL = "INSERT INTO person(personID) ";
cmd.Prepare();
myInsertSQL += "VALUES (?personID)";
cmd.CommandText = myInsertSQL;
cmd.Parameters.AddWithValue("?personID", studentId);
prevID(conn, cmd);
}

我还假设你的studentId是一个字符串。如果数据库将其作为 bigint,您将必须执行正确的 long.TryParse() 调用。

关于c# - 尝试使用 INSERT 方法但不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18733157/

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