Re: SQLPlus version tracking

  • From: Yong Huang <yong321@xxxxxxxxx>
  • To: William.Blanchard@xxxxxxxxxxxxx
  • Date: Fri, 20 Jan 2012 12:25:59 -0800 (PST)

Correction to the quoted text below. According to an old note

VERSION NUMBER - Oracle version numbers explained (Doc ID 39691.1)

the five numbers of the version number are:

9.2.0.2.0
| | | | |_ Port Specific Maintenance Release 
| | | |___ Patch Sets and Patch Set CDs
| | |_____ iAS Release
| |_______ Database Maintenance Release
|_________ Major Database Release

The 3rd may be called something else now.

With some experiment, I think the widths of the numbers are 2, 1, 2, 1, 2 
bytes, respectively. So we can use the following SQL to check the client 
version (run as sys):

with x as (select distinct to_char(ksuseclvsn,'xxxxxxxxxxxxxx') v from 
x$ksusecon where ksusenum = &sid and ksuseclvsn != 0)
select
 to_number(substr(v,8,2),'xx') || '.' || --maj_rel
 substr(v,10,1) || '.' || --mnt_rel
 substr(v,11,2) || '.' || --ias_rel
 substr(v,13,1) || '.' || --ptc_set
 substr(v,14,2) client_version -- port_mnt
from x;

The result is like

Enter value for sid: 393  <-- enter the SID you want to check
old ...
new ...
CLIENT_VERSION
-----------------------------
11.1.00.7.00

If it returns no rows, the client must be 10g or lower.

Yong Huang

--- On Fri, 1/20/12, Yong Huang <yong321@xxxxxxxxx> wrote:

> 186647296 B200300
> 
> Take the last for an example. I guess "B" is version 11, "2" is the 
> release, "003" is the minor release, and "00" is the patch level 


--
//www.freelists.org/webpage/oracle-l


Other related posts: