如何确认数据库是Oracle以及使用SQL的数据库是哪个版本?
时间:2020-03-06 14:25:33 来源:igfitidea点击:
我正在为应用程序构建安装程序。用户可以选择他们已经配置的数据源,并指定它是哪种数据库。我想通过将SQL语句发送到数据源来确认数据库类型确实是Oracle,如果可能的话,确认它们正在运行的Oracle版本。
解决方案
运行以下SQL:
select * from v$version;
我们将得到类似的结果:
BANNER ---------------------------------------------------------------- Oracle Database 10g Release 10.2.0.3.0 - 64bit Production PL/SQL Release 10.2.0.3.0 - Production CORE 10.2.0.3.0 Production TNS for Solaris: Version 10.2.0.3.0 - Production NLSRTL Version 10.2.0.3.0 - Production
我们可以使用
SELECT * FROM v$version;
或者
SET SERVEROUTPUT ON EXEC dbms_output.put_line( dbms_db_version.version );
如果我们不想解析v $ version的输出。
两种方法:
select * from v$version;
会给你:
Oracle Database 11g Enterprise Edition Release 11.1.0.6.0 - 64bit Production PL/SQL Release 11.1.0.6.0 - Production CORE 11.1.0.6.0 Production TNS for Solaris: Version 11.1.0.6.0 - Production NLSRTL Version 11.1.0.6.0 - Production
或者标识Oracle数据库软件版本:
select * from product_component_version;
会给你:
PRODUCT VERSION STATUS NLSRTL 11.1.0.6.0 Production Oracle Database 11g Enterprise Edition 11.1.0.6.0 64bit Production PL/SQL 11.1.0.6.0 Production TNS for Solaris: 11.1.0.6.0 Production