too complicated
Christo Kutrovsky, December 23, 2003 - 9:10 am UTC
This is a workarround, however almost inapplicabe as it is "write only" and extremply inconvenient
If you read the procedure, you will read it with single quotes, then you have to convert them to double quotes , and then u2 could create/replace it.
And on top of everything, most developers use some kind of a developement tool, and they wouldn't be able to use it.
Same thing applies to tables and other object, it would be very nice if Oracle had a "create any procedure in schema <schema name>" and similar grants.
December 23, 2003 - 11:41 am UTC
it would be very nice if we could anticipate each and every use case, implement each and every request. I agree. wouldn't that be nice.
short of that, this be the only way to do it. sorry you don't "like it", but having u1 and u2 work on the same piece of code in the first place seems "fishy" to me. I don't see this as being a very common requirement.
Normally, u1 and u2 would use CVS or some source code repository, they would test in THEIR schema's, they would deploy to U3 on the "shared machine" via some process.
Having 2 cooks stirring the same soup. recipe for disaster in the first place.
Agreed.
Christo Kutrovsky, December 23, 2003 - 2:55 pm UTC
You are right. It is fishy, and having a version control system is way better then 2 users modifying the same code.
I guess I was thinking at a lower level, and too much comparing to table priviliges.
something fishy
Dan Clamage, December 24, 2003 - 9:10 am UTC
We had this trouble. Two developers were working on the same package, in SQL Navigator. Both had extracted the source code from the data dictionary (a common capability in Nav), both had edited it, both had saved it back to the database. But the second person overwrote the changes made by the first person. They asked me how to avoid that. I said, use VSS (our source code control tool), one of you check it out, only one of you edit it FROM THE SCRIPT. He said, I was afraid you'd say that. I've seen too many developers bitten on the butt, editing packages out of the database and saving it back to the database. I ALWAYS work out of a text file.
December 24, 2003 - 10:14 am UTC
remember
code is code is code is code.
stored procedures is just "code", no different then C, VB, Java, Cobol. It is code and needs to be developed in the same fashion with the same rules.
If you have more then one person mucking with it -- you'll need source code control just like you would with anything else.
Mark, January 16, 2004 - 3:25 pm UTC
Are there any apps now, or planned that you know of to incorporate VSS functionallity inside Oracle? It's a shame we have to use a M$ database to manage our Oracle database code. (I'm half joking, but it would be a nice addon).
Thanks
January 17, 2004 - 1:13 am UTC
i'm not familar with VSS, don't know what it is.
for source code control, I use rcs.
Source Code Control with Oracle development
Tim, August 16, 2006 - 2:41 pm UTC
Microsoft Visual Source Safe (MS VSS) can be successfully used for your Oracle objects. Obviously this can be done in a manual fashion. (ie - export the Oracle object and put it into MS VSS.) One would assume the previous poster was not asking about this - but rather about an automated and integrated method.
Quest Software offers both Toad and SQL Navigator. These both contain "team coding". This can be integrated with MS VSS so as to provide seamless source code control (SCC) capabilities.
In my last place of employment - we had implemented this quite successfully. I would expect that something other than MS VSS could be used - however my experience is with MS VSS.
An enhancement to this process which I have read about - but not implemented - would be to have a system trigger which (upon DDL on a particular object by a particular user) would check in the "team coding" repository to see if that object has been checked out by that user.
At my current place of employment - we are planning on implementing this in the near future. I will be trying to implement the "system trigger" option as well - it will be interesting to see if I can really get it to work - in the manner in which I have read about.