平常心情【持续更新中】

前言

去年7月来到深圳,开始了大学毕业的第一份工做,转眼又到了夏天。前端

今天突然发现工做中的有些感想不知道该同谁说。和同期入职的好朋友兼同事说吧,天天只有午餐时间和偶尔的下班后能够交流,但那时候又忍不住说一些更有意思的话题(笑);和女友(抱歉忍不住想秀一下,说到和爱有关的,关键就是幸运,因此祝福屏幕前的你早日遇到你爱也爱你的另外一半)说吧她又不是计算机专业的;数据库

不说倒也不憋得慌,只是以为许多有趣的想法和感觉就这样随风消逝了,怪惋惜的,因而猛然想起本身在学生时用过一下的开源中国………测试

2019-04-19

键盘上老是亮着的大写锁定指示灯

ORACLE 数据库里的各类命名老是少不了大写,因而那么一长串的大写字母就让我忍不住打开了大写锁定;平时中英文输入切换太多,一不当心把中文的标点带到代码里就很烦了,我惯用的 QQ 五笔在这个 WIN10 下又不知道有什么鬼 BUG ,在英文状态下按住 SHIFT 输入大写字母再松开 SHIFT 时会切换回中文,好在 PL/SQL 不区分大小写,我就习惯了将 CAPS LOCK 看成切换中英文输入的切换按钮,因此个人电脑在休眠时大写锁定指示灯老是亮着的,算是一道不起眼的风景吧。日志

使用 PL/SQL 处理字符串真让人头

产生麻烦的主要缘由是 PL/SQL 中没有专门用于描述字符的类型,字符和字符串在这里是一视同仁的,语法分析那种难度的处理使用正则搜索和替换倒也能够,但好比统计一个字符串中有多少“,”这种事情写起来就让人很头大了code

Nvl(Length(Regexp_Replace(v_Fonts_Type, '[^,]+', '')), 0)orm

真是服了,这也能想到。事件

2019-05-10

沉不住气就很气

需求方找我说问题,原本我就事论事回答问题就行了,但不知道为何我就忍不住提了一下本身以前作过的项目怎么怎么样,唉!真的是沉不住气,一瓶子不满半瓶子晃荡……工程师的项目就像艺术家的做品同样,是本身心血的结晶,老是但愿可以获得其余人承认。**可能仍是作得太少了,作多了就再也不那么忍不住吹嘘本身作过的东西了吧……**一瓶子不满半瓶子晃荡,就很气。字符串

2019-05-24

说话要稳要慢

做为一个懂这件事的人,在向不清楚这件事的人描述这件事时,必定要稳,说话必定要慢,必定要观察对方的反应,注意对方是否理解。不能由于本身很清楚就连珠炮似的说个不停!!!it

2019-09-26

神奇的INSERT

一个INSERT语句报了错,MMP在我心中上了膛;这个插入是绝对没有违反任何限制的,然而仍是TNND报错了!惋惜我日志记录疏忽了,忘记在 Dbms_Utility.Format_Error_Backtrace 后面加 SQLERRM 致使我仍是不知道具体错误缘由。待我修改代码,记下这我的神共愤的奇葩异常倒底是何方妖孽。io

原来是前端的问题

关于上次事件的后续:GFBFYXR 在完善日志记录后,终于找到了这个问题的缘由:

INSERT 报错是由于有个字段违反的 NOT NULL 的约束,这个存储过程的调用方:Form 里的 ON-UPDATE 触发器,对任何修改过的行都会执行一次,即便修改后与修改前一致;然初始都是未勾选的状态,但当用户先勾选再取消勾选时,一条本不该执行该存储过程的记录也执行了,解决方案就是在 ON-UPDATE 中检查是否勾选。用户当初测试时反馈她两次相同的操做,一次有报错,一次没报错,实际上当时报错的那次操做应该是多了一个勾选后又取消勾选。

这次经历给个人启示有两点:

  1. 要对用户的反馈报有怀疑,仍是应该尽量依靠日志来调查 BUG;
  2. 给表创建约束真的能够在最后关头避免有问题的数据插入,形成更深更广的灾难。

2019-10-25

面对复杂报表,拒绝游标,用动态SQL

当一个查询须要关联到许多表,而且用户要求的查询参数过于多时,不要犹豫,虽然字符串拼接有各类各样的风险,但不要怕,消除恐惧,微笑着面对它!

在报表这种 OLAP 应用中,SQL 硬解析的开销能够忽略,应该尽量帮数据库找到最优计划去执行,什么绑定变量,什么游标参数,都很差使;尤为当有些条件可能为空时,写一堆 t_Condition IS NULL OR Table.Col = t_Condition 实在不是什么好操做。

报表一次运行跑半天,拼接字符串就完事儿了!把拼好的 SQL 写到日志里,拼不对再调调调!

2019-11-05

有个不成熟的想法……

上次搞了个动态SQL,把报表搞得很快很快,需求方反馈,速度贼快;我看到仍是挺开心哈,可能我仍是比较喜欢互动,也喜欢获得别人的承认;因此在想,要不要转行去当老师呢?是时候去了解一下了。

相关文章
相关标签/搜索