All Downloads are FREE. Search and download functionalities are using the official Maven repository.

oracle.jdbc.driver.OracleDatabaseMetaData.class Maven / Gradle / Ivy

????2Y
??
??	????
??
??
??
??
?????????????????????????
??
??	??????????????????????????
????????????????????????
????????	

 !"#$%&'()?*+,	?-./+_Copyright_2007_Oracle_All_Rights_Reserved_Ljava/lang/String;
BUILD_DATE
ConstantValue0TRACEZ*(Loracle/jdbc/internal/OracleConnection;)VCodeLineNumberTable((Loracle/jdbc/driver/OracleConnection;)V
getColumns^(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/sql/ResultSet;
StackMapTable
Exceptions1getColumnsNoWildcardsL(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/sql/ResultSet;.233getColumnsWithWildcardsM(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)Ljava/sql/ResultSet;?44getTypeInfo()Ljava/sql/ResultSet;5getColumnsNoWildcardsPlsql()Ljava/lang/String;()V
SourceFileOracleDatabaseMetaData.java?6??789:;<=>???????@A3BC%DEF;#oracle/jdbc/OracleCallableStatementGH$oracle/jdbc/internal/OracleResultSetI?JKSELECT  NULL AS table_cat,

/*+ CHOOSE */B       t.owner AS table_schem,
       t.table_name AS table_name,
?       DECODE(s.owner, NULL, t.owner, s.owner)
              AS table_schem,
       DECODE(s.synonym_name, NULL, t.table_name, s.synonym_name)
              AS table_name,
         DECODE (t.data_type, 'CHAR', t.char_length,                   'VARCHAR', t.char_length,                   'VARCHAR2', t.char_length,                   'NVARCHAR2', t.char_length,                   'NCHAR', t.char_length,                   'NUMBER', 0,           t.data_length),java/lang/StringBuilder???       t.column_name AS column_name,
       DECODE (t.data_type, 'CHAR', 1, 'VARCHAR2', 12, 'NUMBER', 3,
               'LONG', -1, 'DATE', LM%oracle/jdbc/driver/PhysicalConnectionN?9391, 'RAW', -3, 'LONG RAW', -4,  
F               'BLOB', 2004, 'CLOB', 2005, 'BFILE', -13, 'FLOAT', 6, 
I               'TIMESTAMP(6)', 93, 'TIMESTAMP(6) WITH TIME ZONE', -101, 
;               'TIMESTAMP(6) WITH LOCAL TIME ZONE', -102, 
3               'INTERVAL YEAR(2) TO MONTH', -103, 
6               'INTERVAL DAY(2) TO SECOND(6)', -104, 
;               'BINARY_FLOAT', 100, 'BINARY_DOUBLE', 101, 
!               'XMLTYPE', 2007, 
               1111)
              AS data_type,
!       t.data_type AS type_name,
'       DECODE (t.data_precision, null, t.data_length,         t.data_precision)
              AS column_size,
       0 AS buffer_length,
       DECODE (t.data_type, 3               'NUMBER', DECODE (t.data_precision, -                                 null, -127, 0                                 t.data_scale), 0               t.data_scale) AS decimal_digits,
       10 AS num_prec_radix,
3       DECODE (t.nullable, 'N', 0, 1) AS nullable,
O?       c.comments AS remarks,
       NULL AS remarks,
?       t.data_default AS column_def,
       0 AS sql_data_type,
       0 AS sql_datetime_sub,
       t.data_length AS char_octet_length,
       t.column_id AS ordinal_position,
       DECODE (t.nullable, 'N', 'NO', 'YES') AS is_nullable
FROM all_tab_columns t, all_synonyms s, all_col_comments cnWHERE t.owner LIKE :1 ESCAPE '/'
  AND t.table_name LIKE :2 ESCAPE '/'
  AND t.column_name LIKE :3 ESCAPE '/'
?WHERE (t.owner LIKE :4 ESCAPE '/' OR
       (s.owner LIKE :5 ESCAPE '/' AND t.owner = s.table_owner))
  AND (t.table_name LIKE :6 ESCAPE '/' OR
       s.synonym_name LIKE :7 ESCAPE '/')
  AND t.column_name LIKE :8 ESCAPE '/'
j  AND t.owner = c.owner (+)
  AND t.table_name = c.table_name (+)
  AND t.column_name = c.column_name (+)
1  AND s.table_name (+) = t.table_name
  AND ((DECODE(s.owner, t.owner, 'OK',
                       'PUBLIC', 'OK',
                       NULL, 'OK',
                       'NOT OK') = 'OK') OR
       (t.owner LIKE :9 AND t.owner = s.table_owner) OR
       (s.owner LIKE :10 AND t.owner = s.table_owner))3ORDER BY table_schem, table_name, ordinal_position
P;
QR4S?TU3union select
 'CHAR' as type_name, 1 as data_type, LV as precision,
H '''' as literal_prefix, '''' as literal_suffix, NULL as create_params,
6 1 as nullable, 1 as case_sensitive, 3 as searchable,
F 0 as unsigned_attribute, 0 as fixed_prec_scale, 0 as auto_increment,
D 'CHAR' as local_type_name, 0 as minimum_scale, 0 as maximum_scale,
G NULL as sql_data_type, NULL as sql_datetime_sub, 10 as num_prec_radix

from dual
8union select
 'VARCHAR2' as type_name, 12 as data_type, H 'VARCHAR2' as local_type_name, 0 as minimum_scale, 0 as maximum_scale,
#union select
 'DATE' as type_name, as data_type, 7 as precision,
H NULL as literal_prefix, NULL as literal_suffix, NULL as create_params,
6 1 as nullable, 0 as case_sensitive, 3 as searchable,
D 'DATE' as local_type_name, 0 as minimum_scale, 0 as maximum_scale,
3union select
 'RAW' as type_name, -3 as data_type, C 'RAW' as local_type_name, 0 as minimum_scale, 0 as maximum_scale,
-16union select
 'BLOB' as type_name, 2004 as data_type, H null as literal_prefix, null as literal_suffix, NULL as create_params,
6 1 as nullable, 0 as case_sensitive, 0 as searchable,
D 'BLOB' as local_type_name, 0 as minimum_scale, 0 as maximum_scale,
6union select
 'CLOB' as type_name, 2005 as data_type, 6 1 as nullable, 1 as case_sensitive, 0 as searchable,
D 'CLOB' as local_type_name, 0 as minimum_scale, 0 as maximum_scale,
?select
 'NUMBER' as type_name, 2 as data_type, 38 as precision,
 NULL as literal_prefix, NULL as literal_suffix, NULL as create_params,
 1 as nullable, 0 as case_sensitive, 3 as searchable,
 0 as unsigned_attribute, 1 as fixed_prec_scale, 0 as auto_increment,
 'NUMBER' as local_type_name, -84 as minimum_scale, 127 as maximum_scale,
 NULL as sql_data_type, NULL as sql_datetime_sub, 10 as num_prec_radix
from dual
?union select
 'DATE' as type_name, 92 as data_type, 7 as precision,
 NULL as literal_prefix, NULL as literal_suffix, NULL as create_params,
 1 as nullable, 0 as case_sensitive, 3 as searchable,
 0 as unsigned_attribute, 0 as fixed_prec_scale, 0 as auto_increment,
 'DATE' as local_type_name, 0 as minimum_scale, 0 as maximum_scale,
 NULL as sql_data_type, NULL as sql_datetime_sub, 10 as num_prec_radix
from dual
?union select
 'TIMESTAMP' as type_name, 93 as data_type, 11 as precision,
 NULL as literal_prefix, NULL as literal_suffix, NULL as create_params,
 1 as nullable, 0 as case_sensitive, 3 as searchable,
 0 as unsigned_attribute, 0 as fixed_prec_scale, 0 as auto_increment,
 'TIMESTAMP' as local_type_name, 0 as minimum_scale, 0 as maximum_scale,
 NULL as sql_data_type, NULL as sql_datetime_sub, 10 as num_prec_radix
from dual
?union select
 'TIMESTAMP WITH TIME ZONE' as type_name, -101 as data_type, 13 as precision,
 NULL as literal_prefix, NULL as literal_suffix, NULL as create_params,
 1 as nullable, 0 as case_sensitive, 3 as searchable,
 0 as unsigned_attribute, 0 as fixed_prec_scale, 0 as auto_increment,
 'TIMESTAMP WITH TIME ZONE' as local_type_name, 0 as minimum_scale, 0 as maximum_scale,
 NULL as sql_data_type, NULL as sql_datetime_sub, 10 as num_prec_radix
from dual
?union select
 'TIMESTAMP WITH LOCAL TIME ZONE' as type_name, -102 as data_type, 11 as precision,
 NULL as literal_prefix, NULL as literal_suffix, NULL as create_params,
 1 as nullable, 0 as case_sensitive, 3 as searchable,
 0 as unsigned_attribute, 0 as fixed_prec_scale, 0 as auto_increment,
 'TIMESTAMP WITH LOCAL TIME ZONE' as local_type_name, 0 as minimum_scale, 0 as maximum_scale,
 NULL as sql_data_type, NULL as sql_datetime_sub, 10 as num_prec_radix
from dual
?union select
 'INTERVALYM' as type_name, -103 as data_type, 5 as precision,
 NULL as literal_prefix, NULL as literal_suffix, NULL as create_params,
 1 as nullable, 0 as case_sensitive, 3 as searchable,
 0 as unsigned_attribute, 0 as fixed_prec_scale, 0 as auto_increment,
 'INTERVALYM' as local_type_name, 0 as minimum_scale, 0 as maximum_scale,
 NULL as sql_data_type, NULL as sql_datetime_sub, 10 as num_prec_radix
from dual
?union select
 'INTERVALDS' as type_name, -104 as data_type, 4 as precision,
 NULL as literal_prefix, NULL as literal_suffix, NULL as create_params,
 1 as nullable, 0 as case_sensitive, 3 as searchable,
 0 as unsigned_attribute, 0 as fixed_prec_scale, 0 as auto_increment,
 'INTERVALDS' as local_type_name, 0 as minimum_scale, 0 as maximum_scale,
 NULL as sql_data_type, NULL as sql_datetime_sub, 10 as num_prec_radix
from dual
?union select
 'LONG' as type_name, -1 as data_type, 2147483647 as precision,
 '''' as literal_prefix, '''' as literal_suffix, NULL as create_params,
 1 as nullable, 1 as case_sensitive, 0 as searchable,
 0 as unsigned_attribute, 0 as fixed_prec_scale, 0 as auto_increment,
 'LONG' as local_type_name, 0 as minimum_scale, 0 as maximum_scale,
 NULL as sql_data_type, NULL as sql_datetime_sub, 10 as num_prec_radix
from dual
?union select
 'LONG RAW' as type_name, -4 as data_type, 2147483647 as precision,
 '''' as literal_prefix, '''' as literal_suffix, NULL as create_params,
 1 as nullable, 0 as case_sensitive, 0 as searchable,
 0 as unsigned_attribute, 0 as fixed_prec_scale, 0 as auto_increment,
 'LONG RAW' as local_type_name, 0 as minimum_scale, 0 as maximum_scale,
 NULL as sql_data_type, NULL as sql_datetime_sub, 10 as num_prec_radix
from dual
?union select 'NUMBER' as type_name, -7 as data_type, 1 as precision,
NULL as literal_prefix, NULL as literal_suffix, 
'(1)' as create_params, 1 as nullable, 0 as case_sensitive, 3 as searchable,
0 as unsigned_attribute, 1 as fixed_prec_scale, 0 as auto_increment,
'NUMBER' as local_type_name, -84 as minimum_scale, 127 as maximum_scale,
NULL as sql_data_type, NULL as sql_datetime_sub, 10 as num_prec_radix
from dual
?union select 'NUMBER' as type_name, -6 as data_type, 3 as precision,
NULL as literal_prefix, NULL as literal_suffix, 
'(3)' as create_params, 1 as nullable, 0 as case_sensitive, 3 as searchable,
0 as unsigned_attribute, 1 as fixed_prec_scale, 0 as auto_increment,
'NUMBER' as local_type_name, -84 as minimum_scale, 127 as maximum_scale,
NULL as sql_data_type, NULL as sql_datetime_sub, 10 as num_prec_radix
from dual
?union select 'NUMBER' as type_name, 5 as data_type, 5 as precision,
NULL as literal_prefix, NULL as literal_suffix, 
'(5)' as create_params, 1 as nullable, 0 as case_sensitive, 3 as searchable,
0 as unsigned_attribute, 1 as fixed_prec_scale, 0 as auto_increment,
'NUMBER' as local_type_name, -84 as minimum_scale, 127 as maximum_scale,
NULL as sql_data_type, NULL as sql_datetime_sub, 10 as num_prec_radix
from dual
?union select 'NUMBER' as type_name, 4 as data_type, 10 as precision,
NULL as literal_prefix, NULL as literal_suffix, 
'(10)' as create_params, 1 as nullable, 0 as case_sensitive, 3 as searchable,
0 as unsigned_attribute, 1 as fixed_prec_scale, 0 as auto_increment,
'NUMBER' as local_type_name, -84 as minimum_scale, 127 as maximum_scale,
NULL as sql_data_type, NULL as sql_datetime_sub, 10 as num_prec_radix
from dual
?union select 'NUMBER' as type_name, -5 as data_type, 38 as precision,
NULL as literal_prefix, NULL as literal_suffix, 
NULL as create_params, 1 as nullable, 0 as case_sensitive, 3 as searchable,
0 as unsigned_attribute, 1 as fixed_prec_scale, 0 as auto_increment,
'NUMBER' as local_type_name, -84 as minimum_scale, 127 as maximum_scale,
NULL as sql_data_type, NULL as sql_datetime_sub, 10 as num_prec_radix
from dual
?union select 'FLOAT' as type_name, 6 as data_type, 63 as precision,
NULL as literal_prefix, NULL as literal_suffix, 
NULL as create_params, 1 as nullable, 0 as case_sensitive, 3 as searchable,
0 as unsigned_attribute, 1 as fixed_prec_scale, 0 as auto_increment,
'FLOAT' as local_type_name, -84 as minimum_scale, 127 as maximum_scale,
NULL as sql_data_type, NULL as sql_datetime_sub, 10 as num_prec_radix
from dual
?union select 'REAL' as type_name, 7 as data_type, 63 as precision,
NULL as literal_prefix, NULL as literal_suffix, 
NULL as create_params, 1 as nullable, 0 as case_sensitive, 3 as searchable,
0 as unsigned_attribute, 1 as fixed_prec_scale, 0 as auto_increment,
'REAL' as local_type_name, -84 as minimum_scale, 127 as maximum_scale,
NULL as sql_data_type, NULL as sql_datetime_sub, 10 as num_prec_radix
from dual
?union select
 'REF' as type_name, 2006 as data_type, 0 as precision,
 '''' as literal_prefix, '''' as literal_suffix, NULL as create_params,
 1 as nullable, 1 as case_sensitive, 0 as searchable,
 0 as unsigned_attribute, 0 as fixed_prec_scale, 0 as auto_increment,
 'REF' as local_type_name, 0 as minimum_scale, 0 as maximum_scale,
 NULL as sql_data_type, NULL as sql_datetime_sub, 10 as num_prec_radix
from dual
?union select
 'ARRAY' as type_name, 2003 as data_type, 0 as precision,
 '''' as literal_prefix, '''' as literal_suffix, NULL as create_params,
 1 as nullable, 1 as case_sensitive, 0 as searchable,
 0 as unsigned_attribute, 0 as fixed_prec_scale, 0 as auto_increment,
 'ARRAY' as local_type_name, 0 as minimum_scale, 0 as maximum_scale,
 NULL as sql_data_type, NULL as sql_datetime_sub, 10 as num_prec_radix
from dual
?union select
 'STRUCT' as type_name, 2002 as data_type, 0 as precision,
 '''' as literal_prefix, '''' as literal_suffix, NULL as create_params,
 1 as nullable, 1 as case_sensitive, 0 as searchable,
 0 as unsigned_attribute, 0 as fixed_prec_scale, 0 as auto_increment,
 'STRUCT' as local_type_name, 0 as minimum_scale, 0 as maximum_scale,
 NULL as sql_data_type, NULL as sql_datetime_sub, 10 as num_prec_radix
from dual
order by data_type
5SW?declare
  in_owner varchar2(32) := null;
  in_name varchar2(32) := null;
  my_user_name varchar2(32) := null;
  cnt number := 0;
  out_owner varchar2(32) := null;
  out_name  varchar2(32):= null;
  loc varchar2(32) := null;
  xxx SYS_REFCURSOR;
begin
  in_owner := ?;
  in_name := ?;
  select user into my_user_name from dual;
  if( my_user_name = in_owner ) then
    select count(*) into cnt from user_tables where table_name = in_name;
    if( cnt = 1 ) then
      out_owner := in_owner;
      out_name := in_name;
      loc := 'USER_TABLES';
    else
      begin
        select table_owner, table_name into out_owner, out_name from user_synonyms where synonym_name = in_name;
      exception
        when NO_DATA_FOUND then
        out_owner := null;
        out_name := null;
      end;
      if( not(out_name is null) ) then
        loc := 'USER_SYNONYMS';
      end if;
    end if;
  else
    select count(*) into cnt from all_tables where owner = in_owner and table_name = in_name;
    if( cnt = 1 ) then
      out_owner := in_owner;
      out_name := in_name;
      loc := 'ALL_TABLES';
    else
      begin
        select table_owner, table_name into out_owner, out_name from all_synonyms 
          where  owner = in_owner and synonym_name = in_name;
      exception
        when NO_DATA_FOUND then
          out_owner := null;
          out_name := null;
      end;
      if( not(out_owner is null) ) then
        loc := 'ALL_SYNONYMS';
      end if;
    end if;
  end if;
'open xxx for SELECT NULL AS table_cat,
>       in_owner AS table_schem,
       in_name AS table_name,
X;^WHERE t.owner = out_owner 
  AND t.table_name = out_name
 AND t.column_name LIKE ? ESCAPE '/'
; 
 ? := xxx;
 end;??)oracle/jdbc/driver/OracleDatabaseMetaData"oracle/jdbc/OracleDatabaseMetaDataSat_Aug_14_12:18:34_PDT_2010java/sql/SQLExceptionjava/lang/Stringjava/sql/CallableStatementjava/sql/PreparedStatementjava/sql/Statement!(Loracle/jdbc/OracleConnection;)V
connection'Loracle/jdbc/internal/OracleConnection;%oracle/jdbc/internal/OracleConnectiongetIncludeSynonyms()ZhasSqlWildcard(Ljava/lang/String;)ZstripSqlEscapes&(Ljava/lang/String;)Ljava/lang/String;prepareCall0(Ljava/lang/String;)Ljava/sql/CallableStatement;	setString(ILjava/lang/String;)VregisterOutParameter(II)Vexecute	getCursor(I)Ljava/sql/ResultSet;closeStatementOnClosegetVersionNumber()Sappend-(Ljava/lang/String;)Ljava/lang/StringBuilder;mapDateToTimestamptoStringgetRemarksReportingprepareStatement0(Ljava/lang/String;)Ljava/sql/PreparedStatement;executeQuerycreateStatement()Ljava/sql/Statement;(I)Ljava/lang/StringBuilder;((Ljava/lang/String;)Ljava/sql/ResultSet;getMapDateToTimestamp ???????????????"*+???
%(???"*+???
,/!???tD*??6?,,?(*,?? -?*-??**,?*-???*,-???rs(y9}??9??????c*?	:*??
:+?,?-??-???
?W??:????*
????%?7?A?I?V?`????1?????????????????????v?*??6:::'ء?+\??~~?::	:
:?Y??*??? ?!?"?#?$?%?&?'?(?)?*?+?,?-?.?#(??/?0?1?2?3?4?5?6?7?8?9??::;:
<:=:>:?:@:A:B:C:D:E:?Y?????::??Y??
??::??Y??	??::?Y????::*??F??Y??
??::??Y????::?Y?????::*??F??Y????::??Y????::?!?Y??G???::??Y??G???::*??F??Y????::*????Y????::?Y??G???::*??H:??+??+?I+??+?I,??,?I,??,?I-??-?I+??+?I+??+?I?9+??+?I,??,?I-??-?I?J?:????8?????<?@?D?H?????????????7<Uk??? ?"?$?%?'?(*+7-R/^0t2?3?5?8?:?<?=?>??@A0BFFXGjH|K?N?P??)?#	???????@K?	???????
?)?????????????????????????K???????????????????????????????????????:<"!!?8?????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????? h*??KL*??=?Y?L???	Ч??MN?O?P?Q?R?S?T??::?Y?U???	??жMN?O?P?Q?V?S?T??::?Y?W?*??? ?!?"?X?Y?Z?Q?[?S?T??::?Y?\???	Ч??MN?O?Z?Q?]?S?T??::^:?Y?_??N?`?a?Q?b?S?T??::?Y?c??N?O?d?Q?e?S?T??::?Y?f????g?h?i?j?k?l??m?n?o?p?q?r?s?t?u???)?Y???v?w?x??:??y??::+?z?:???6
?
??[????64J8LqV??Q?^?e??U
?-????????C??????????H
??????
???????C??????????????8???????????????????????????$?{L*??=|N}::?Y??*??~?!?"?#?$?%?&?'?(?)?*?+?,?-?.?#(??/?0?1?2?3?4?5?6?7?8?9??::;:<:=:	>:
@::C:
E:-:?Y????::?Y????::*??F??Y????::??Y????::?Y??	?
??::*??F??Y????::?Y??G???::*??F??Y??
??::?Y??G???::?:?Y?+????::??z??
?????????
???????!
#$2&H(c*o+?-?/?0?3?5?7?8???5???????????????J??????????????????????????<<?????????=??




© 2015 - 2024 Weber Informatics LLC | Privacy Policy