关于我
我听到的会忘记,我看到的能记住,我做过的才真正明白,我写下来的才算得上是我的思考。
刘未鹏的博客当中有一篇文章叫做如何有效地记忆与学习,它的开篇就是这句话:
你所拥有的知识并不取决于你记得多少,而在于它们能否在恰当的时候被回忆起来。
好记性不如烂笔头,我写博客的目的是为了记录我的心得,好让它真正变为我拥有的知识。
联系我
EMAIL: xiongjun8817@outlook.com
时刻问自己的问题:
我在2015年7月份面试AVD Digital Media的时候,面试官问了我一个这样的问题:“你知不知道mysql的触发器?”。
我回答:“我知道,但是从来没用过。”
面试官接着说:“比如说我有2张表,一张学生表,一张班级表。班级表当中保存着该班级学生的数目。现在我要做一个操作,增加一个学生到表里面,应该怎么做?”
我说:“先把学生的信息插入到学生表当中去,然后从班级表当中select出这个班级的学生数目,然后自增以后update回去。”
面试官说:“你这样做需要三条sql,而且你的自增操作还需要用代码来做,但是我用触发器做的话只需要一条sql就可以做,而且根本用不着代码处理数据。但是我们写代码从来不用触发器,数据库仅仅管存数据,而逻辑就用代码来写,大家都是仅仅使用mysql功能的一半,你知道为什么吗?”
我回答说:“不知道,但是大家都是这样做的。”
接下来,他问出了我谨记到现在的问题:
面试官接着说:“是,大家都是这样做,但是你有没有想过为什么要这样做?”
我摇了摇头。后来我问过其他人,才知道触发器这种高级功能,对DB的性能,扩展和维护都会带来额外的负担,如果没有专业的DBA,就不要使用触发器,否则写代码获得的这点好处,完全不值得以后要填的坑。
我后来才发现,面试官之所以知道我没用过触发器,还要问这么冷门的问题,目的只是为了问我这一个问题:
“大家都是这样用,但是你有没有想过为什么要这样用?”。
重要的并不是知不知道,而是有没有想过。
这个问题,我自那以后时刻存在我的脑子里面,不敢忘记。