RE: Controlling changes to database - Team Coding
"Bryan, Timothy" <[email protected]>
| Newsgroups | gmane.comp.db.oracle.toad.free |
|---|---|
| Message-ID | <[email protected]> |
Very helpful Stephen, We use subversion for other things and very familiar with how it works, but not integrated with TOAD. It was my understanding initially that TOAD would lock the objects in the database and prevent changes unless checked out. Then over the past couple of days, actions we have been able to do made me wonder about the entire process. Our situation: We have two Dev databases, a QA database, and a production database. I only installed Team Coding with subversion integration on one of the Dev Databases. It was my intention to maintain control over the dev database for changes and then would be able to create a more accurate change script in some manner that would be deployed to QA. Typically we refresh the QA database from production prior to a major deployment so it is our intention the scripts run in QA would also be run in production once testing is complete. The problem for us has been the multiple developers making changes in the dev database without proper tracking. It then takes some additional update scripts to QA after deployment in order to fix the things we missed. Once done, we deploy all those to production and occasionally something still is missed. I now have the Team Coding installed and configured with Code Collection Groups and everything is in the svn repository with my local repository on my machine. I need to duplicate this setup to the others. What I am trying to make sure of is the process and training to verify no developer can or does change the database without the Team Coding / subversion managing the change. I was able to run a few scripts to change some types etc. and re-compile the database. These objects are not changed in subversion. For instance this script was run: alter type SS_ROUTEORDER add attribute assetnum number cascade; commit; I checked the type in my local repository and this type does not include the new attribute. What I need is a process to train the developers that provides a path to change without this occurring. Thanks for your input and to Norm. I am making progress in understanding. Best Regards Timothy Bryan We are what we repeatedly do. Excellence, therefore, is not an act but a habit. Aristotle From: [email protected] [mailto:[email protected]] On Behalf Of Stephen Beausang Sent: Wednesday, January 11, 2012 11:37 AM To: [email protected] Subject: RE: [toad] Controlling changes to database - Team Coding Timothy, I'd like to chime in here if I may. 'Not cut and dry ..' is apt . First Please see my comments below to your original post . Some General Stuff : Toad makes a distinction between Team Coding and File Based Source Control. See the help under Use Source Control - About Source Control, which gives a very useful breakdown of the options and advantages / disadvantages of each system. It also helps to outline how each works . File based source control does not require any server side objects, and simply interfaces with the VCS Provider to manages source files. Team Coding manages objects centrally in Toad and requires that you install the Team Coding Server Side Objects for each database that you wish to control. In addition Team Coding performs a 'lock' on controlled objects in the database. In reality it is keeping a local copy of the source for each object and using SVN (in your case) to manage version history and locking source locking centrally. There is also Server Side Table, usually in the Toad Schema ,which manages the locking of objects. The source is controlled in the SVN repository, and each user checks out a local copy of the source when he checks out the object (e.g in the Schema Browser). When the user has an object 'checked out' Toad automatically opens the local copy of the object for editing. In your case I would also read up on the help for Mirroring in Team Coding. This enables each user to create Sandbox in his own schema without effecting the production object. Toad manages locking etc. I'm not sure if this is appropriate for you dev environment or not. I hope this helps Stephen ---------------------------------------------------------------------- Waste Management recycles enough paper every year to save 41 million trees. Please recycle any printed emails.