The Control Center Package Utility assists DBAs by automating four tasks very often associated with managing database packages. A package is a control structure containing SQL statements in executable form. It is produced as part of the preparation process before a program is compiled. Packages are stored in a database.
When a program is migrated from test to production, very often it is not recompiled. Instead, the executable PHASE is simply copied from the test to the production library. If the program contains SQL statements, the associated package must also be copied to the production database.
The Control Center Package Utility helps in this effort by allowing you to unload a package from one database and reload it into another. The unload/reload utilities are also useful for migrating packages in a distributed processing environment.
Whenever an object such as a DBSPACE, table, or index is dropped, all packages dependent upon that object are marked invalid. Before an invalid package can be executed, the database must first rebind it. This can result in poor response time for the first person attempting to execute the program. The Control Center Package Utility allows DBAs to rebind packages ahead of time so that their users are not impacted.
Many times, DBAs are called upon to help application developers identify poor performing SQL statements in their programs and suggest ways the SQL can be recoded to improve performance. The Control Center Package Utility helps in this area by producing a package report which, among other things, lists every SQL statement in the program. The Control Center package report can be used to tune the SQL in the program and becomes an important part of the documentation about the program.