2015的冬天,一个周日的下午,窗外的雪一直下。DBCS刚刚完成一次全面整改,整改之后架构更加清晰,界面不再频繁卡死了。那时候DBCS只支持PG数据库,没有一个实在的用户。下一步怎么走,何去何从,犹如窗外白雪般的迷茫.....
2015年PLSQL已经进入中国20多年了,经过多年的打磨,加上校园的推广。熟练使用PLSQL的人往往成为Oracle高手的代名词,就连能够安装PLSQL的技能也是很多应聘者通过面试的利器。

这款经典的Oracle数据库管理工具在很多DBA心中像白马王子一样,那么的圣洁、高贵、遥不可及,而且当时的DBCS是一名衣衫褴褛,不知所措的屌丝。即使人们没有心中成见那座大山,DBCS和PLSQL的差距也是肉眼可见的天地之别,差距之大让人绝望。

爱慕一个人,但永远成不了他,甚至都没有机会靠近他,是非常痛苦的。怨天尤人是懦夫,无脑追捧没有意义。事已至此,痛定思痛,成为人家不可能,学习人家总可以吧,缩小差距还是可能的吧。2015-2025爱恨交织的10年由此拉开序幕,用苦笑应对嘲笑,用傻笑应对冷笑,适应痛苦是任何一个逆袭之路上必须要掌握的生存之道,10年时光弹指一挥间。如果你是一个开发者,而且在全力开发一个之前没有的东西,你周围的亲人、朋友都不会理解你在忙什么事情,大家往往用异样的眼光像看傻子一样看着你,如何应对这种孤独并且坚持下来就看你的智慧和勇气了。

PLSQL对比DBCS还有优势吗?
有的,而且还不少,这边只举几个例子,从这些例子中大家就能看到PLSQL对于细节的把控是多精益求精。在这些细节层面,DBCS还有很多地方需要向PLSQL学习。
PLSQL的存储过程调试功能非常的稳定,对于Oracle的理解极为深入。DBCS并不是不支持存储过程调试,而是目前远远没有PLSQL稳定,对于调试界面的交互也没有PLSQL理解的深入。

优势2:查询结果集的字段和注解信息
对于PLSQL来说,可以从结果集合中,通过点击列表头,看到这个列的字段和注解信息。尽管这是一个非常小的细节,但是的确能够极大提升用户体验。

优势3:查询器关键字和数据库对象的快速关联
PLSQL在查询面板内,按住ctrl,并且用鼠标移动到关键字的位置上,就能通过点击关键字定位到具体的对象。

该功能和DBCS的对象搜索有点类似,如下图所示,但是DBCS的用户体验的确没有PLSQL用户体验好。

PLSQL对DBCS的恩情
PLSQL对于用户对于用户场景的把控极具远见,因此给了DBCS提供最有效的参考,让我们少走了弯路,这是PLSQL对于DBCS的恩情。在这里必须向经典的PLSQL致敬!!!!
大多数数据库管理工具都不具备命令行窗口功能,因为大家普遍认为图形管理工具没有必要有命令行。经过实际发现,命令行窗口具备最好的交互性,对于整个SQL运行过程的留痕取证最为方便,特别是和图形界面集成之后,比原生的还好用。

图:PLSQL命令行窗口

图:DBCS命令行
很多数据库工具都是把所有用户或者模式甚至database放在一个树状结构中,Navicat就是这么设计的,但是这种设计会让树状结构非常长,定位每个对象都非常麻烦。反观PLSQL采用了模式切换的方式,经过实践这种方式的确效率更高,误操作概率更低,这一点给DBCS非常大的启发。

图:PLSQL的模式切换

图:DBCS的模式切换
经过多年的研发,DBCS和PLSQL大部分常用功能已经旗鼓相当了,但是PLSQL的很多操作细节还是优于DBCS的。
其实DBCS与PLSQL相比最大优势在于两个产品完成不同的成长经历。PLSQL在最佳的历史时期,抓住了最佳机遇,获取了大量的资源和光环,但他甚至不知道DBCS的存在。DBCS一直把PLSQL视为偶像。在追星的路上,DBCS经过一次又一次的炼狱,这种难得的历练恰恰就是昔日的屌丝和自己偶像王子进行最终的对抗的基石。