当前位置: 首页 > 编程语言 > C#

使用c#更新ms访问分享

时间:2023-04-10 16:01:13 C#

C#学习教程:使用c#更新msaccess这是一个更新功能,在我的调试过程中它可以正确执行,但不会更新我的数据库。我已经找到了这个问题的答案,但它仍然不起作用。我也尝试创建一个新数据库,希望这是问题所在,但仍然没有用。privatevoidupdate_Click(objectsender,EventArgse){DataTabledt=newDataTable();OleDbConnectioncon=newOleDbConnection();con.ConnectionString=@"Provider=Microsoft.ACE.OLEDB.12.0;DataSource=C:Userssherilyn&justineDocumentsVisualStudio2015Projectsjollibee4jollibee4jollibee.accdb";con.Open();OleDbCommandcmd=newOleDbCommand();cmd.Connection=con;Stringid=dataGridView1.SelectedRows[0].Cells[0].Value+String.Empty;intid1=Int32.Parse(id);try{if(database.selectedIndex==0){cmd.CommandText="更新Breakfast_Meals设置[Meals]=@meals,[Price]=@price,[Picture]=@picture,[Description]=@descriptionWHERE[ItemID]=@id";}elseif(database.selectedIndex==1){cmd.CommandText="updateBurger_Sandwhich_Mealsset[Meals]=@meals,[Price]=@price,[Picture]=@picture,[Description]=@descriptionWHERE[Item]ID]=@id";}elseif(database.selectedIndex==2){cmd.CommandText="更新Chicken_Meals设置[Meals]=@meals,[Price]=@price,[Picture]=@picture,[Description]=@descriptionWHERE[ItemID]=@id";}elseif(database.selectedIndex==3){cmd.CommandText="更新甜点集[Meals]=@meals,[Price]=@price,[Picture]=@picture,[Description]=@descriptionWHERE[ItemID]=@id";}elseif(database.selectedIndex==4){cmd.CommandText="更新Kids_Meals设置[Meals]=@meals,[Price]=@price,[Picture]=@picture,[Description]=@descriptionWHERE[ItemID]=@id";}elseif(database.selectedIndex==5){cmd.CommandText="更新RiceMeals_NoodlesMeals设置[Meals]=@meals,[Price]=@price,[Picture]=@picture,[Description]=@descriptionWHERE[ItemID]=@id";}elseif(database.selectedIndex==6){cmd.CommandText="更新Side_Items设置[Meals]=@meals,[Price]=@price,[Picture]=@picture,[Description]=@descriptionWHERE[ItemID]=@id";}elseif(database.selectedIndex==7){cmd.CommandText="updateValue_Meals设置[Meals]=@meals,[Price]=@price,[Picture]=@picture,[Description]=@descriptionWHERE[ItemID]=@id";}cmd.Parameters.AddWithValue("@id",id1);cmd.Parameters.AddWithValue("@meals",meal.Text);intmealPrice=Int32.Parse(price.Text);cmd.Parameters.AddWithValue("@price",mealPrice);cmd.Parameters.AddWithValue("@picture",savePhoto());cmd.Parameters.AddWithValue("@description",description.Text);DialogResultdialogResult=MessageBox.Show("你确定要更改数据吗?","警告",MessageBoxButtons.YesNo,MessageBoxIcon.Warning);if(dialogResult==DialogResult.Yes){cmd.ExecuteNonQuery();con.Close();}elseif(dialogResult==DialogResult.No){con.Close();}OleDbDataAdapteradapter=newOleDbDataAdapter(cmd);adapter.Fill(dt);dataGridView1.DataSource=dt;database_onItemSelected(sender,e);//查看所选索引的dgv数据con.Close();}catch(Exceptionex){MessageBox.Show(ex.Message,"Error",MessageBoxButtons.OK,MessageBoxIcon.Error);con.Close();}}按占位符预期的正确顺序添加参数cmd.Parameters.AddWithValue("@meals",meal.Text);intmealPrice=Int32.Parse(price.Text);cmd.Parameters.AddWithValue("@price",mealPrice);cmd.Parameters.AddWithValue("@picture",savePhoto());cmd.Parameters.AddWithValue("@description",description.Text);cmd.Parameters.AddWithValue("@id",id1);OleDb不通过名称解析参数值,而是通过参数在参数集合中的位置根据你的顺序,where子句中的idconditionin接收description参数中的值也考虑用Add代替AddWithValue看:CanwestopusingAddWithValue?以上是C#学习教程:Usingc#toupdatetheentirecontentofmsaccesssharing,如果有帮助对大家有用,需要多了解C#学习教程,希望大家多多关注,本文收集自网络,不代表立场。如涉及侵权,请点击右侧联系管理员删除。如有转载请注明出处:

最新推荐
猜你喜欢