0

我对程序和东西特别是甲骨文相当陌生。我一直在学习 PLSQL 的基础知识,这与实际编程没有太大区别。

但我不确定公约和标准。

给定:我有一个逻辑,可以根据参数(更像是批处理)在不同的表上接受参数、删除、插入记录,并在一切成功与否时返回一个标志。

问题: 1.) 这个逻辑适合作为函数还是过程?*根据我的研究,当我们想要返回某事时,我们使用函数,当我们想要做(插入/更新/删除)某事时使用过程。但我的逻辑两者兼而有之。

2.) 我可以在 PLSQL 中调用函数内部的过程吗?

4

2 回答 2

1

1)是的,这绝对是一个合适的程序

2)您可以在过程和函数中调用过程

如果你的批处理变得复杂,尝试将其拆分成多个子程序(过程和函数),将它们封装到一个plsql包中。这一切都取决于您的过程的复杂性

于 2013-07-14T13:15:45.217 回答
1

“如果一切成功与否,则返回一个标志。”

不要这样做。标志很糟糕,因为它们很容易被忽略。如果被调用程序失败,它应该引发异常。异常是好的,因为调用程序必须承认它们,并决定如何处理它们。

如果被调用程序成功,它不需要做任何事情;在没有引发异常的情况下,调用程序只是假设成功并继续前进。

“我将在 Java 中调用这些程序”

Java 处理异常。PL/SQL 异常会抛出 Java ,因此在调用存储过程时SQLException使用块。try catch您可以使用SQLException.getCode()来获取错误号。 每个 Oracle 错误都有一个. 此外,我们可以使用魔法范围 -20999 到 -20000 来定义自定义异常。 了解更多

于 2013-07-14T14:57:44.120 回答