从SQL Server 2008中删除大量数据 [英] Deleting large amounts of data from SQL Server 2008

查看:21
本文介绍了从SQL Server 2008中删除大量数据的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个场景,我必须在多个表中进行更新,这些表相互依赖,例如具有关系,具有来自网页的大量数据,其中有许多文本框、复选框和下拉列表。

我使用jQuery.ajax保存数据。在那里编写了新的数据保存方法,并正在运行。

现在很难处理用于更新目的的大量数据。

我有一个想法,就是删除所有数据并将其另存为新行。这是不是一个好主意?

在记住更新所有这些记录后,我应该在此处做些什么?我必须花一周时间来编写一个Update方法。

请在此方案中指导我。

推荐答案

您的问题很模糊,但我认为您是这样说的:

  • 我可以将数据插入我的数据库
  • 更新我的数据看起来很困难,所以我更喜欢直接删除然后再插入(因为我已经编写了代码)

我要说这是个坏主意,原因如下(毫无疑问还有更多原因):

  • 即使只是删除,您仍然需要确定要删除的正确行、以正确的顺序从表中删除等。因此,无论如何都不太可能节省很多时间
  • 您将向应用程序添加不必要的复杂性和额外的维护工作:事务处理、要维护的其他代码、权限更改等。
  • 以触发器和/或过程的形式向数据库添加服务器端逻辑将变得更加困难,因为删除不一定真的意味着删除,它可能意味着更新的开始(我是指逻辑上的,而不是物理上的),这是一种巨大的痛苦,维护起来非常困难,而且可能会破坏基于DML操作或事件的任何代码、跟踪或审计
  • 数据库将需要执行更多日志记录,因为您已将一个操作分成两个

也许您有很好的理由想要避免更新,但"很难编写"不应该是其中之一(如果我将您的情况过于简单化,请原谅)。

如果你准确地解释什么是"困难",给出一些关于"大量数据"含义的背景知识,展示一些说明你的困难的表结构和代码,你可能会得到一个更有用的答案。

这篇关于从SQL Server 2008中删除大量数据的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆