是否可以向oracle包添加版本号

时间:2014-09-25 15:28:51

标签: sql oracle plsql oracle11g .net-4.5

是否可以/以及如何将版本号标记为11g Oracle Package。每次编译包时,最好使用自动递增的数字。此外,我需要在net framework 4.5上使用Oracle Managed DataAccess程序集提取软件包的版本。

2 个答案:

答案 0 :(得分:1)

不确定你到底需要什么......

您可以在包规格后立即使用SVN标签修订版。但只有在您提交到SVN时才会更新修订号。因此,您可以使用它来匹配SVN中的版本与数据库上编译的版本。

您也可以始终从以下位置获取最后修改时间:

select * 
  from user_objects
where object_type in ('PACKAGE','PACKAGE BODY');

答案 1 :(得分:0)

只需使用以下内容:

CREATE OR REPLACE PACKAGE TEST1
-- This is package TEST1 ver %1.1%
AS    
  ver VARCHAR2(128);
END;

CREATE OR REPLACE PACKAGE BODY TEST1
AS    
BEGIN
  ver := '1.1';
END;

然后,您可以通过查询<package name>.ver来提取包的版本。或者通过在DBA_SOURCE中搜索特殊模式(包标题注释)。您也可以将其与SVN propset结合使用。

如果您想自动执行#34;即没有任何CVS或开发人员协助(我不建议),您可以创建特殊的DDL触发器AFTER DDL ON DATABASE