例如:更新customer表的所有行,因为您忘记添加where子句.
它是什么样的,实现它并向您的同事或客户报告?
从中学到了什么?
Surgical Cod.. 11
我认为我最大的错误是
truncate table Customers truncate table Transactions
我没有看到我登录的是什么MSSQL服务器,我想清除我的本地副本...熟悉的"OH s**t"当它删除时间大于半秒钟时,我的老板注意到我去了可见白色,问我刚做了什么.大约半分钟后,我们的网站监控器发疯了,并开始向我们发送电子邮件说该网站已关闭.
学过的知识?永远不要让连接开放的时间超过绝对需要的时间.
直到凌晨4点才恢复备份中的数据!我的老板为我感到难过,给我买了晚餐......
我认为我最大的错误是
truncate table Customers truncate table Transactions
我没有看到我登录的是什么MSSQL服务器,我想清除我的本地副本...熟悉的"OH s**t"当它删除时间大于半秒钟时,我的老板注意到我去了可见白色,问我刚做了什么.大约半分钟后,我们的网站监控器发疯了,并开始向我们发送电子邮件说该网站已关闭.
学过的知识?永远不要让连接开放的时间超过绝对需要的时间.
直到凌晨4点才恢复备份中的数据!我的老板为我感到难过,给我买了晚餐......
我在一家小型电子商务公司工作,有2位开发人员和一位DBA,我是开发人员之一.我通常不习惯在动态更新生产数据,如果我们已经更改了存储过程,我们将它们通过源代码控制并进行正式的部署例程设置.
好吧无论如何,用户来找我需要对我们的联系人数据库进行更新,批量更新一堆设施.所以我在我们的测试环境中编写了查询,例如
update facilities set address1 = '123 Fake Street' where facilityid in (1, 2, 3)
这样的事情.在测试中,3行更新.将它复制到剪贴板,将其粘贴到我们的生产sql框中的终端服务中,运行它,惊恐地看着它花了5秒钟执行并更新了100000行.不知何故,我复制了第一行,而不是第二行,并没有像I CTRL+ V,CTRL+ E' 那样关注.
我的DBA,一位年长的希腊绅士,可能是我见过的最脾气暴躁的人并不激动.幸运的是我们有一个备份,并没有打破任何页面,幸运的是,该字段仅用于显示目的(和计费/运输).
吸取的教训是关注你正在复制和粘贴的内容,也可能是其他一些内容.