如何使用c#将datagridview更新到数据库?
我将datagridview绑定到datasouce,绑定到datatable。 我想创建一个按钮,当我单击它时,数据库将使用datagridview中的新参数进行更新。 我读过一些关于TableAdapter的东西,但我真的找不到一些好的例子和解释 所以,如果有人能提供一些关于tableadapter的信息,这将对我有很大帮助。 此外,如果您认为您有一个更好的解决方案为我更新数据库,我很高兴知道这一点 编辑: 好的,我正在尝试使用mysqlcommandbuilder。 我的代码现在如下所示:如何使用c#将datagridview更新到数据库?,c#,datagridview,sql-update,tableadapter,C#,Datagridview,Sql Update,Tableadapter,我将datagridview绑定到datasouce,绑定到datatable。 我想创建一个按钮,当我单击它时,数据库将使用datagridview中的新参数进行更新。 我读过一些关于TableAdapter的东西,但我真的找不到一些好的例子和解释 所以,如果有人能提供一些关于tableadapter的信息,这将对我有很大帮助。 此外,如果您认为您有一个更好的解决方案为我更新数据库,我很高兴知道这一点 编辑: 好的,我正在尝试使用mysqlcommandbuilder。 我的代码现在如下所示:
MySqlDataAdapter da = new MySqlDataAdapter();
da.SelectCommand = new MySqlCommand("SELECT * from setups", sql_Class.myConnection);
MySqlCommandBuilder cb = new MySqlCommandBuilder(da);
cb.GetUpdateCommand();
da.Update(dt);
现在我的错误出现在da.Update(dt)中,它说:“输入字符串的格式不正确”。
我已经创建了一个循环,它在sql查询中的所有参数上运行,并且所有参数值都为null
for (int i = 0; i <= cb.GetUpdateCommand().Parameters.Count - 1; i++)
{
Console.WriteLine(cb.GetUpdateCommand().Parameters[i].ParameterName + " " + cb.GetUpdateCommand().Parameters[i].Value);
}
for(inti=0;i设法用某种“旧式”方法更新了我的数据库
我只是在datagridview中的每一行上运行,并使用ExecuteOnQuery更新它。
我手动获取所有参数
例如:
int setup_id=Convert.ToInt16(stam.Cells[“setup_id”].Value);
字符串setup\u name=stam.Cells[“setup\u name”].Value.ToString();
字符串mySqlQuery=“更新设置设置设置设置名称=”“+setup设置名称+”,其中setup\u id=“+setup\u id
MySqlCommand cm=新的MySqlCommand(mySqlQuery,sql_Class.myConnection);
cm.ExecuteNonQuery()