今天面试JAVA程序员有道题是这样的:昨天3点我接到同事P电话,说有个客户的系统有点问题,叫我过去

今天面试JAVA程序员有道题是这样的:昨天3点我接到同事P电话,说有个客户的系统有点问题,叫我过去一趟。在楼下打了15分钟的电话都没人接,我给同事P打电话。同事P接通客户的手机后,客户下来接我上楼。我给同事P打电话了解到客户问题后,经排查,得知系统里有张表,其中有一部分数据有个字段的值不需要进行数据修复,于是我就写了个UPDATE语句,直接更新了,客户又重做了一遍,之前的问题得到了解决。今天早上,该客户打来电话,说系统出问题了,到现场排查后,发现是昨天UPDATE的时候,WHERE条件写得有问题,把不该UPDATE的记录,也UPDATE了。于是,客户就投诉了……
思考:如果你是案例中的工程师“我”,你认为哪些地方存在问题和不足,具体你会如何处理?
哪位有经验的开发人员可以帮我想想应该怎么回答比较好?

在这个案例中程序员犯的最大的错误就是直接操作数据库
因为出问题的是客户的正式环境,不是开发/测试环境,数据库的数据就是客户的核心利益点,不是随随便便就可以动的,程序员没有充分的评估对数据库操作带来的风险,这是第一个大错,通常能不动数据库的不要去动数据库,尤其是正式环境,这是很危险的。
其次,如果数据库非动不可,在动之前没有被备份数据,是第二个大错
温馨提示:内容为网友见解,仅供参考
第1个回答  2015-07-01
1、先排查问题确定是否一定是数据库的原因(不到万不得已千万不要动数据库)
2、如果要动数据库,要是知道数据备份了没有,相关数据是否为重要数据,在决定怎么做保险(测试环境还在不在,做好测试),

真实情况是遇到这种事:大部分人老油条都是能推则推,推不了就跟同事一起讨论解决方案追问

那应该如何处理妥当一点

作为程序员的你,常用的软件有哪些?
当然你比较习惯Linux\/Unix下开发,Emacs\/Vim可能是你用得比较多的文本编辑器,还有UltraEdit、Sublime Text、EditPlus、Atom这些老牌的文本编辑器,不过现在我觉得每个程序员都应该下载一个Visual Studio Code,支持的语言比较多,而且插件非常丰富,是微软官方支持的开发者工具,开源免费而且颜值非常高。 查询资料、版本管理工具...

Java的就业前景怎么样?
很工资都很低,一个月也就1000多,加上加班费一个月能拿2000多一点,我每个月都向家里寄回800-1000元,到了2011年末,一次偶然的机会我接触了Java,听说Java的前景挺不错,工资相对于我一个农民工来说简直是天文数字,于是我在新华书店买了几本Java的书,尽管白天辛苦工作,晚上回来还是坚持看书,...

有哪些靠谱的线上兼职?
1、第一调查网 2、收奖网 3、投吧网 4、集思吧 网站(赚点app)5、爱调查 网站 6、易调网 7、问卷网 8、调研吧 网站 9、最网e调查 网站 10、k任务 app 11、有奖问答 app 12、给力赚 app 14、拼任务 app 15、微调查 app 16、艾客帮 网站 17、调研说 网站 18、中智库玛 网站 19、态度8 网站 ...

适合大学生做的兼职有哪些?
学校食堂也是一个很不错的兼职,打菜、洗碗、收盘子,这几样工作都容易做而且不太累,虽然工资低了点,但是管饭,而且距离近啊,每个月还可以节省几百伙食费。尤其打菜不仅解决了个人温饱,寝室里那一波也有了着落。再比如图书馆整理书籍的管理员,体育馆的管理员等等;诸如此类还有,帮人占座,每到...

有什么好的知识管理软件?
3.MediaWiki MediaWiki全球比较著名的开源wiki程序之一,最适合企业用来搭建百科、知识库查询等用途,企业内部使用可能会带来过高的成本。它运行于PHP+MySQL环境。MediaWiki从2002年2月25日被作为维基百科全书的系统软件,并有大量其他应用实例。仅从这点来看其功能的强大和成熟度毋庸置疑,所以也不过多介绍。 工具优点: ...

相似回答