Is there a way to know which driver (thick / thin jdbc, odbc, .net, oci, ...) was used to connect to the database

From: Reardon, Bruce (RTABBAY) <"Reardon,>
Date: Tue, 7 Jul 2009 09:39:12 +1000
Message-ID: <>

I use v$session_connect_info to distinguish between BEQ and Net8 connections.
I am not sure if this will help with distinguishing thick and thin drivers (don't have easy way to test at the moment).

Example script - with thanks to Jacques R. Kilchoer response to Oracle-L in 19-Apr-2001 :

COLUMN connection_method HEADING "Con Type" FORMAT A15 WRAP


   decode (rtrim (substr (b.network_service_banner, 1, 18)) , 

'Windows NT TCP/IP' , 'SQL*Net' ,
'Oracle Bequeath NT' , 'Bequeath' ,
'Windows NT Named P' , 'IPC - Named Pipes' ,
'Other? - ' || b.network_service_banner
) as connection_method

   v$session a,
   v$session_connect_info b
   a.sid = b.sid(+)
   AND ( INSTR ( b.network_service_banner , 'Oracle Advanced Security' ) = 0
         OR b.network_service_banner IS NULL


Bruce Reardon

Hi Freek,

my tests on Linux show that at least the JDBC driver set the program column in v$session
thin driver - connection string jdbc:oracle:thin:_at_... program = 'JDBC Thin Client'
OCI (thick) - connection string jdbc:oracle:oci:_at_.. program = 'java.exe'


This email is confidential and may also be privileged. If you are not the intended recipient, please notify us immediately and delete this message from your system without first printing or copying it. Any personal data in this email (including any attachments) must be handled in accordance with the Rio Tinto Group Data Protection Policy and all applicable data protection laws.

Received on Mon Jul 06 2009 - 18:39:12 CDT

Original text of this message