将文本添加到cpr_txtbx,name_txtbx和address_txtbx之后,我将它们转换为要在我的语句字符串中使用的参数。我正在使用的MySQL服务器需要语法:“插入人员(类型,cpr,名称,地址)” VALUES('cpr','名称','地址')”(是,单引号),我正在撕开头发,试图找出此处的语法。
我的按钮现在看起来像这样(我知道这是错误的):
private void add_btn_Click(object sender, RoutedEventArgs e)
{
string statement = "INSERT INTO people (type, cpr, name, address)" +
"VALUES('citizen', ':cpr', ':name', ':address')";
this.AUD(statement, 0);
add_btn.IsEnabled = false;
edit_btn.IsEnabled = true;
delete_btn.IsEnabled = true;
}
澳元为:
private void AUD(string statement, int state)
{
string msg = "";
MySqlCommand cmd = conn.CreateCommand();
cmd.CommandText = statement;
cmd.CommandType = CommandType.Text;
switch (state)
{
case 0:
msg = "Borger tilføjet.";
cmd.Parameters.Add("cpr", MySqlDbType.Text, 10).Value = cpr_txtbx.Text;
cmd.Parameters.Add("name", MySqlDbType.Text).Value = name_txtbx.Text;
cmd.Parameters.Add("address", MySqlDbType.Text).Value = address_txtbx.Text;
break;
case 1:
msg = "Borger modificeret.";
cmd.Parameters.Add("address", MySqlDbType.Text).Value = address_txtbx.Text;
break;
case 2:
msg = "Borger slettet.";
cmd.Parameters.Add("cpr", MySqlDbType.Text, 10).Value = cpr_txtbx.Text;
break;
}
try
{
int n = cmd.ExecuteNonQuery();
if ( n > 0 )
{
MessageBox.Show(msg);
this.updateDataGrid();
}
}
catch(MySqlException ex)
{
MessageBox.Show(ex.ToString());
}
}
我正在关注的教程在这里:https://www.youtube.com/watch?v=NiGsgctfiYM
这是我无法工作的唯一内容,因此,非常感谢您的帮助:)
错误:
string statement = "INSERT INTO people (type, cpr, name, address)" +
"VALUES('citizen', ':cpr', ':name', ':address')";
右:
string statement = "INSERT INTO people (type, cpr, name, address)" +
"VALUES('citizen', :cpr, :name, :address)";