试图在MS Access中编辑文本字段,但它说需要更多参数
本文关键字:参数 字段 MS Access 文本 编辑 | 更新日期: 2023-09-27 18:15:07
我试图在MS Access数据库中编辑文本字段。我能够成功地编辑一个数字,但如果我试图编辑一个文本字段,它会要求我输入更多的参数。我的代码是这样的:
try
{
ad.UpdateCommand = new OleDbCommand("Update Tabel1 set Navn=" + txt_navn.Text.ToString() + " where ID=" + txt_userID.Text + "", conn);
ad.UpdateCommand = new OleDbCommand("Update Tabel1 set Niveau=" + txt_niveau.Text.ToString() + " where ID=" + txt_userID.Text + "", conn);
conn.Open();
ad.UpdateCommand.ExecuteNonQuery();
conn.Close();
}
catch(Exception ex)
{
MessageBox.Show(ex.Message);
conn.Close();
}
基本上,如果我禁用Niveau线,Navn文本字段将不接受任何更改,并要求更多参数。我也试过在同一个ad.UpdateCommand
行中同时拥有这两个,但这给了我一个错误。
因为它现在没有给出任何错误,但它只是不改变'Navn'字段在数据库中,'Niveau'字段的变化只是很好。你们知道吗?
Navn
可能是保留的,所以尝试将其框起来。此外,没有理由将文本框的文本内容强制转换为字符串。而且,如前所述,一个调用就可以完成:
ad.UpdateCommand = new OleDbCommand("Update Tabel1 Set [Navn] = '" + txt_navn.Text + "', Niveau = " + txt_niveau.Text + " Where ID = " + txt_userID.Text + "", conn);
希望这能奏效
ad.UpdateCommand = new OleDbCommand("Update Tabel1 set Navn='" + txt_navn.Text.ToString() + "' where ID=" + txt_userID.Text + ";", conn);
ad.UpdateCommand = new OleDbCommand("Update Tabel1 set Niveau='" + txt_niveau.Text.ToString() + "' where ID=" + txt_userID.Text + ";", conn);
我已经更新了Navn='" + txt_navn.Text.ToString() + "'
而不是Navn=" + txt_navn.Text.ToString() + "
下一个命令
也是一样但问题是它只会更新Niveau
而不是Navn
,因为你在ad.UpdateCommand
中有最后一个命令存储,所以你可以像这样即兴编写代码
ad.UpdateCommand = new OleDbCommand("Update Tabel1 set Navn='" + txt_navn.Text.ToString() + "', Niveau='" + txt_niveau.Text.ToString() + "' where ID=" + txt_userID.Text + ";", conn);