【问题标题】:How to save data changed in datagridview to a database?如何将datagridview中更改的数据保存到数据库中?
【发布时间】:2017-10-17 06:50:18
【问题描述】:

我有一个带有DataGridView 的简单表单,它使用DataSetDataTables 作为数据源。我需要将DataGridView 中添加、更改或删除的数据保存到数据库中。但是,有一个问题。我没有硬编码所有数据库信息。相反,用户在运行时输入它。我试图使用SqlCommandBuilder,但看起来数据库必须有一个唯一的标识符才能工作。还有其他方法吗?还是我必须限制用户仅使用具有唯一标识符的数据库?即便如此,我是否必须为插入/删除/更新编写自定义命令?或者标准方法会起作用?

【问题讨论】:

  • 不要拨打DataGridViewa GridViewDataGrid,反之亦然!!这是错误且令人困惑的,因为它们是不同的控件。始终以正确的名称称呼事物! - ..看起来数据库必须有一个唯一的标识符才能工作。当然。 DBMS 将总是要求唯一标识符。它还能如何工作?它还能如何识别行???没有桌子的设计非常糟糕。
  • @TaW 编辑了标题,谢谢
  • DBMS 应该遵循的另一条规则是它必须为表('systables')提供完整的系统信息。您将能够查询它们并找出从类型到键、fks、视图等所需的任何内容。

标签: c# .net sql-server winforms ado.net


【解决方案1】:

我不完全确定您的应用程序将在哪里进行,因此我可能会在下面提供一些详细信息基地。

首先,如果您要构建任何规模的应用程序,请考虑使用WPF 而不是winforms。它提供了显着更多的功能和灵活性,并被推荐用于 winforms。如果您确实使用 WPF,那么您应该查看 MVVM pattern 以跟踪您的数据。

就用户在运行时选择数据库而言。您是否有一组可以连接的有限数据库?如果是这样,您可以在后台设置连接详细信息,并让用户从下拉列表中选择他们想要使用的连接。

对于数据库的读/写,我建议使用Entity Framework

【讨论】:

    猜你喜欢
    • 2012-07-07
    • 2012-07-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-08-03
    相关资源
    最近更新 更多