private void button1_Click(object sender, EventArgs e)
{
loginPageBindingSource.EndEdit();
int pcode = 0;
pcode = int.Parse(pincode.Text);
personalbalancesheet.BalanceSheetDataSet1TableAdapters.LoginPageTableAdapter myadapter = new personalbalancesheet.BalanceSheetDataSet1TableAdapters.LoginPageTableAdapter();
try
{
myadapter.Insert(name.Text, loginname.Text, password.Text, add1.Text, add2.Text, phoneno.Text, city.Text, statebox.Text, pcode);
MessageBox.Show("Data Inserted");
}
catch (Exception ex)
{
MessageBox.Show("inserion failed");
}
}
修改:添加评论中的更多详细信息
上面的代码不起作用,因为我试图将值从文本框保存到数据库...没有编译或运行时错误,但数据库没有更新。显示的输出是“数据已插入”。
代码只是这个。 Insert()
是一种库方法。你能为我提供数据库中数据插入的替代代码吗?
答案 0 :(得分:0)
一种可能性是您使用的数据映射层尚未将事务提交到数据库。因此,虽然您的插入方法似乎成功,但实际数据库中没有任何改变。
修改强>
假设您使用TableAdapter作为变量名建议,那么您需要调用TableAdapter.Update()
来实际将数据持久保存到数据库中。这是来自MSDN的代码示例:
try
{
this.Validate();
this.customersBindingSource.EndEdit();
this.customersTableAdapter.Update(this.northwindDataSet.Customers);
MessageBox.Show("Update successful");
}
catch (System.Exception ex)
{
MessageBox.Show("Update failed");
}