packages - one file or separate

  • From: Jeff Chirco <backseatdba@xxxxxxxxx>
  • To: "oracle-l@xxxxxxxxxxxxx" <oracle-l@xxxxxxxxxxxxx>
  • Date: Wed, 13 Sep 2017 08:00:06 -0700

We put all our database code in files and use a source control. We’ve
always stored our package header and body in a single file. We use PL/SQL
Developer and it handles that packages in a single file and opens the
header and body in nice separate tabs. We getting ready to move out source
control to Git and wondering if now is the time to split up our package
files into separate files.  The benefit I guess is that we are not
compiling the header when nothing has changed. Currently when they made an
update to the package body the developers will send us the file containing
the header and so both get recompiled in production. Which unless I am
mistaken forces referencing objects to recompile.  Only checking out the
body would prevent that but then we have more files to check out when we
need the header.

So I am curious what is better or more common?  I’ve been also looking
around at tools that manage the source control like Datical and Red Gate.
Although Datical is ridiculously expensive.  Anyways these tools seem to
prefer packages in separate files.

What does everyone here do?

Thanks,
Jeff

Other related posts: