Something free, something easy, or something fast? <grin>
With 10g I love using DataPump to extract the DDL as metadata, and it can generate the re-create scripts automatically. The poor person's approach to tracking package changes can be as simple as saving them them with a consistent date-time suffix. We then track which version is in a release by means of a spreadsheet.
Main Topics
Browse All Topics





by: jtriftsPosted on 2007-07-30 at 04:09:21ID: 19591486
Hi,
, and a C# script? Nothing. It's all text (or in other cases, binary -- depends on the storage mechanism).
Not sure exactly what you mean in terms of "keeping a history". Most SCM (Source Control Management) tools will store the "delta" when making a change -- i.e. it stores the difference between successive revisions of a file. Examples of this include good old Unix RCS, PVCS, CVS etc.
With CVS and PVCS for example, you can run a diff report between versions in a single archive, a version in the archive and on the file server, or in different archives. When you make changes to code however, that is the time to be documenting what the changes are. Ideally you put these into the version history comments when you check the object back into the repository.
Generally, with SCM tools though, you get what you pay for. Subversion, for instance is free to use are many versions of CVS interfaces -- but of course you won't get the support that you get when you pay a premium for example, when you license PVCS.
I don't know of ANY SCM tool that keeps track of table/schema type changes -- as this would need to be more "intelligent" than current SCM tools are. This is due to the fact that an SCM tool is generally software agnostic -- i.e. it does not understand the detail of underlying objects you are storing. To PVCS, what is the difference between a SQL script which creates tables, a PL/SQL script which creates a package/procedure/function
That said, if you use a tool such as Oracle DEsigner, you can develop successive versions of design which CAN be versioned within its own repository and then you can generate the scripts which build the database (and its schemas) -- but still this doesn't meet your requirement.
Do you think you could explain a bit more about what you want, and WHY and WHAT such a feature list would offer you? It could be that your question is for a more specific purpose and that we might be able to find an alternative to meet the *real* requirement.
REgards,
JT