【问题标题】:how to update datagridview to database using c#?如何使用 c# 将 datagridview 更新到数据库?
【发布时间】:2013-10-04 20:47:08
【问题描述】:

我有一个绑定到数据源的数据网格视图,绑定到数据表。 我想创建一个按钮,当我单击它时,数据库将使用 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);
            }

我在数据表中有值,我已经仔细检查过,但有人参数为空。 任何想法为什么?

【问题讨论】:

    标签: c# datagridview sql-update tableadapter


    【解决方案1】:

    设法以某种“老式”方法更新我的数据库。

    我只是在 datagridview 中的每一行上运行并使用 executenonquery 更新它。 我手动获取所有参数。

    示例: int setup_id = Convert.ToInt16(stam.Cells["setup_id"].Value); 字符串 setup_name = stam.Cells["setup_name"].Value.ToString(); string mySqlQuery = "UPDATE 设置 SET setup_name='"+setup_name+"' WHERE setup_id="+setup_id;

    MySqlCommand cm = new MySqlCommand(mySqlQuery, sql_Class.myConnection); cm.ExecuteNonQuery();

    【讨论】:

      猜你喜欢
      • 2011-05-02
      • 1970-01-01
      • 2017-06-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-05-27
      相关资源
      最近更新 更多