我知道这个话题已经讨论了很多时间,但我仍然不明白我的问题解决了..C#Windows窗体应用程序使用Access女士无法插入数据
好吧,我有一个表格插入登记数据为MS Access数据库(2007年),但我的代码犯规插入数据到数据库中,并没有错误, 这里是代码:
OleDbConnection cn = new OleDbConnection("Provider = Microsoft.Jet.OLEDB.4.0; Data Source = Data/db_klinik.mdb");
OleDbCommand cmd = new OleDbCommand();
OleDbDataAdapter adapter = new OleDbDataAdapter();
private void btnSave_Click(object sender, EventArgs e)
{
string idCard = this.txtID.Text;
string name = this.txtName.Text;
DateTime dateBirth = this.dateEdit1.DateTime;
cn.Open();
cmd.CommandText = "Insert into tb_reg (id, name, dateBirth, blood_type) Values(@id,@name,@dateBirth)";
cmd.Parameters.AddWithValue("@id", idCard);
cmd.Parameters.AddWithValue("@name", name);
cmd.Parameters.AddWithValue("@dateBirth", dateBirth.ToString());
adapter.InsertCommand = cmd;
int result = cmd.ExecuteNonQuery();
if (result > 0)
MessageBox.Show("Succesfully added");
else
MessageBox.Show("try again");
cn.Close();
}
消息框总是显示“添加成功”。
hi bema,thx很多它的工作,我不知道为什么,但它的工作lol – Barzul 2013-04-23 14:06:58
@Barzul我很高兴你得到它的工作 - 但请重新考虑使用字符串连接或格式化来创建您的SQL语句。它打开完成[SQL注入攻击](http://msdn.microsoft.com/en-us/library/ms161953(v=sql.105).aspx),最多可以暴露敏感数据,最坏的情况下会破坏你的数据库。 – 2013-04-23 14:11:31