【问题标题】:Update gridview to sql table all at once一次将gridview更新为sql表
【发布时间】:2017-04-05 18:45:31
【问题描述】:

所以我在 ASP 网页中有一个 gridview,我想定期将其全部更新到 sql server。

每个单元格都由模板字段中的一个文本框组成,如下所示:

 <asp:TemplateField HeaderText="Item" HeaderStyle-CssClass="pinnedcol" ControlStyle-Width="160px">
      <ItemTemplate>
           <asp:TextBox runat="server" Text='<%# Bind("item") %>'
             ID="txtfocus" SelectedRowStyle="myselection" AutoPostBack="true"></asp:TextBox>
      </ItemTemplate>
      <HeaderStyle HorizontalAlign="Center" />
      <ItemStyle HorizontalAlign="Center" />
 </asp:TemplateField>

我有一个计时器设置为每 2 分钟更新一次 sql server,但我不知道在计时器滴答时应该如何创建更新命令。该表相当大,有 30 行 x 26 列,因此编译这么长的更新语句列表似乎不切实际。有没有我可以调用的方法,它可以跟踪用户对 gridview 的修改,然后一次性更新到 sql server?

【问题讨论】:

    标签: sql gridview dataset


    【解决方案1】:

    如果您使用计时器来更新数据库,它将在您的 gridview 上没有任何更改的情况下调用。我建议它在gridview上发生更新时调用您的更新方法。您可以将 SQL DataSource 与 Update 命令结合使用,并将参数集与 where 条件结合使用。当更新事件发生时,它将自动从每一行中选择参数值。请尝试以下 MSDN 中给出的示例,并熟悉使用带有 gridviews 的 SQL DataSource。

    Modifying Data using the SqlDataSource Control

    【讨论】:

    • 我考虑过这种策略,但问题是该程序正在针对进入速度进行优化。所以用户会很快地在列中输入数据,我觉得每次更改后更新都会引入大量延迟。
    猜你喜欢
    • 2011-02-22
    • 2015-11-11
    • 2016-06-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多