Oracle package management strategy without breaking code

I am curious to see how people manage their packages in their applications.

For example, in our development instance, the application developer may want to modify the stored procedure. However, modifying the stored procedure will break existing Java code until the DAO layer is updated to make changes.

My typical practice was to introduce a new procedure into the DEV package. Then the developer can change his link to this package, test it, and then, when we are ready, we can replace the procedure in the "production" package, remove it from DEV, and the developer will change his link to the production package.

However, I find that this does not work as smoothly as I would like. Firstly, if there is a bunch of Java code that depends on the DEV package, then I am in the same situation as if I would edit the production package directly - if I break the package, I will break a bunch of code.

Secondly, people are busy, and we are not going to move the package to production as soon as we are. Then we have two versions of the stored procedure floating around, and it's hard to remember what was transferred to production and what was not.

The goal is to get developers to work. Yes, this is a development server, but we don’t want to break code unexpectedly.

Can anyone suggest methodologies that helped them solve this problem?

+5
source share
2 answers

, Java , . , A , , Java ( , ). , , PL/SQL, Java ( ). .

, PL/SQL , , , , , - , , , PL/SQL Java . , , , , , , .

+3

Java/DAO (, , .. ). -

  • DEFAULT , .
  • , [, pkg.proc_a (1,2,3)] , [, pkg.proc_b (p_1 = > 1, p_2 = > 2)]
  • ,

    pkg proc (p1 varchar2); proc (p1 varchar2, p2 ); ;

/

11gR2 . , () , , - "" .

, .

+1

All Articles