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