1. <legend id='Fmgll'><style id='Fmgll'><dir id='Fmgll'><q id='Fmgll'></q></dir></style></legend>

        <tfoot id='Fmgll'></tfoot>

        <i id='Fmgll'><tr id='Fmgll'><dt id='Fmgll'><q id='Fmgll'><span id='Fmgll'><b id='Fmgll'><form id='Fmgll'><ins id='Fmgll'></ins><ul id='Fmgll'></ul><sub id='Fmgll'></sub></form><legend id='Fmgll'></legend><bdo id='Fmgll'><pre id='Fmgll'><center id='Fmgll'></center></pre></bdo></b><th id='Fmgll'></th></span></q></dt></tr></i><div id='Fmgll'><tfoot id='Fmgll'></tfoot><dl id='Fmgll'><fieldset id='Fmgll'></fieldset></dl></div>
          <bdo id='Fmgll'></bdo><ul id='Fmgll'></ul>
      1. <small id='Fmgll'></small><noframes id='Fmgll'>

        Oracle - 为什么我应该使用包而不是独立的过程或函数

        Oracle - Why should I use packages instead of standalone procedures or functions(Oracle - 为什么我应该使用包而不是独立的过程或函数)
        <tfoot id='hEOnr'></tfoot>
          1. <legend id='hEOnr'><style id='hEOnr'><dir id='hEOnr'><q id='hEOnr'></q></dir></style></legend>
            <i id='hEOnr'><tr id='hEOnr'><dt id='hEOnr'><q id='hEOnr'><span id='hEOnr'><b id='hEOnr'><form id='hEOnr'><ins id='hEOnr'></ins><ul id='hEOnr'></ul><sub id='hEOnr'></sub></form><legend id='hEOnr'></legend><bdo id='hEOnr'><pre id='hEOnr'><center id='hEOnr'></center></pre></bdo></b><th id='hEOnr'></th></span></q></dt></tr></i><div id='hEOnr'><tfoot id='hEOnr'></tfoot><dl id='hEOnr'><fieldset id='hEOnr'></fieldset></dl></div>

            • <bdo id='hEOnr'></bdo><ul id='hEOnr'></ul>

                  <small id='hEOnr'></small><noframes id='hEOnr'>

                    <tbody id='hEOnr'></tbody>
                • 本文介绍了Oracle - 为什么我应该使用包而不是独立的过程或函数的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着跟版网的小编来一起学习吧!

                  问题描述

                  我搜索了谷歌,但没有找到任何关于为什么我应该使用包的令人满意的答案.

                  I searched google but did not find any satisfying answer as to why I should use packages.

                  我知道一个包是一组过程、函数和不同的变量.据我了解,它有点对应于 OOP 中的对象.但是当然,没有什么比实例化一个包的不同实例更好的了,这样每个实例将具有不同的属性值并表现出不同的行为.

                  I know that a package is a bundle of procedures, functions and different variables. As I understand it sort of corresponds to object in OOP. But of course there's nothing like instantiating different instances of a package so that each instance would have different property values and behave differently.

                  那么当我可以创建一个独立的过程并独立调用它时,使用包有什么好处?

                  Then what is the advantage of using packages when I can just create a standalone procedure and call it independently?

                  推荐答案

                  软件包具有以下优点:

                  1. 内聚:与特定子系统相关的所有程序和功能都在一个程序单元中.这只是一个很好的设计实践,但它也更容易管理,例如在源代码控制中.
                  2. 常量、子类型和其他有用的东西:PL/SQL 不仅仅是存储过程.我们可以在包规范中定义的任何内容都可以与其他程序共享,例如用户定义的异常.
                  3. 重载:定义具有相同名称但不同签名的过程或函数的能力.
                  4. 安全性:在包体中定义私有过程,只能由包使用,因为它们没有在规范中公开.
                  5. 共享公共代码:私有程序的另一个好处.
                  6. 我们只需要对一个包而不是几个过程授予 EXECUTE.

                  这篇关于Oracle - 为什么我应该使用包而不是独立的过程或函数的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!

                  本站部分内容来源互联网,如果有图片或者内容侵犯了您的权益,请联系我们,我们会在确认后第一时间进行删除!

                  相关文档推荐

                  How to redirect the output of DBMS_OUTPUT.PUT_LINE to a file?(如何将 DBMS_OUTPUT.PUT_LINE 的输出重定向到文件?)
                  How do I get column datatype in Oracle with PL-SQL with low privileges?(如何使用低权限的 PL-SQL 在 Oracle 中获取列数据类型?)
                  Get a list of all functions and procedures in an Oracle database(获取 Oracle 数据库中所有函数和过程的列表)
                  Why cannot I create triggers on objects owned by SYS?(为什么我不能在 SYS 拥有的对象上创建触发器?)
                  Returning result even for elements in IN list that don#39;t exist in table(即使对于表中不存在的 IN 列表中的元素也返回结果)
                  Reset Sequence in oracle 11g(oracle 11g 中的重置序列)

                    • <tfoot id='QjaUc'></tfoot>
                        • <bdo id='QjaUc'></bdo><ul id='QjaUc'></ul>

                          <i id='QjaUc'><tr id='QjaUc'><dt id='QjaUc'><q id='QjaUc'><span id='QjaUc'><b id='QjaUc'><form id='QjaUc'><ins id='QjaUc'></ins><ul id='QjaUc'></ul><sub id='QjaUc'></sub></form><legend id='QjaUc'></legend><bdo id='QjaUc'><pre id='QjaUc'><center id='QjaUc'></center></pre></bdo></b><th id='QjaUc'></th></span></q></dt></tr></i><div id='QjaUc'><tfoot id='QjaUc'></tfoot><dl id='QjaUc'><fieldset id='QjaUc'></fieldset></dl></div>
                            <tbody id='QjaUc'></tbody>
                        • <legend id='QjaUc'><style id='QjaUc'><dir id='QjaUc'><q id='QjaUc'></q></dir></style></legend>

                          1. <small id='QjaUc'></small><noframes id='QjaUc'>