database - oracle数据库介绍 - oracle数据库教程



Oracle软件包在版本控制? (4)

他们如何输入? 我们过去在上一份工作中工作的方式是编辑一个文本文件,并使用SQL * Plus加载它。 您可以将该源文件放在版本控制下。

源代码必须介于“ CREATE OR REPLACE PACKAGE MYPACKAGE AS ”和“ END; ”之间,后面跟着一行斜线(“/”); 和“PACKAGE BODY”一样,而不是“PACKAGE”。

是的,有一种方法可以将源代码从Oracle中解放出来。 它在一行一行地查找ALL_SOURCE和USER_SOURCE。 你可以用类似的查询把它拉出来

SELECT TEXT FROM ALL_SOURCE
WHERE TYPE='PACKAGE BODY'
  AND NAME='MYPACKAGE' 
  AND OWNER='MYPACKAGEOWNER'
ORDER BY LINE

(未经测试,因为我不再有权访问Oracle),同上“PACKAGE”。

我认为最好是使用SQL * Plus将其重新加载到Oracle中; 确保设置“SCAN OFF”。

幸运的是,我必须和甲骨文合作。 和包。

我有一个包,很多不同的开发人员正在接触,这吓我一跳。 是否有可能将版本控制包内? 那里有一些软件已经这样做了吗? 如果没有,是否有某种出口程序? 我可以从文件系统中抓取文件吗?


Answer #1

我们有一个数据库级触发器来捕获对包的更改并将源保存在一个单独的表中。 它不如版本控制,但至少你知道什么时候发生了变化,如果以后的更改践踏它,可以检索它。



Answer #3

再看看这个链接 。 这是一个PHP / mySQL版本控制工具,可以与任何数据库类型一起工作,学习起来相当简单。





oracle