我试图找到最有效的方式来连接PL/SQL中的文本。我的系统扫描五个变量,并执行这些方针的东西:以更简洁的方式连接PL/SQL中的文本
return_value := ''
IF variable_a is null THEN
return_value := 'Error: Variable A null';
END IF;
IF variable_b is null THEN
IF return_value = '' THEN
return_value := 'Error: Variable B null';
ELSE
return_value := return_value || ', Variable B null';
END IF;
IF variable_c is null THEN
IF return_value = '' THEN
return_value := 'Error: Variable C null';
ELSE
return_value := return_value || ', Variable c null';
END IF;
etc.
希望的什么,我试图做的逻辑是明确的 - 确定是否有任何的五个变量为null并连接每一个错误的文本消息传递给返回值,所以在一堆if/else语句结束时,返回值为null(好)或包含错误调用(bad)。
有没有更好的方法来做到这一点,虽然?它看起来很长,我觉得,作为一名PL/SQL新手,我错过了一种以更高效,更短的方式做到这一点的明显方式。
在某些情况下,PL/SQL是一个冗长的语言。通常它不值得减少冗长,因为在许多情况下代码的清晰度会降低太多。初学者尤其如此。从下面的3个答案中,我更喜欢Bacs为初学者提供的简单答案,尽管FrancescoGenta的帮助功能解决方案也很棒。德米特里的答案也很聪明,但并不完全是我的代码库中解决这样一个简单问题的解决方案(一周后,需要很多开发人员的大脑周期来解码发生的事情)。 – user272735 2014-11-10 06:53:29