Hi Thomas,

attached is a small patch to provide correct types
in metadata result sets.


Steffen
*** ADO.orig    Sat Nov 09 21:08:44 2002
--- ADO.pm      Sun Aug 17 22:45:38 2003
***************
*** 1141,1148 ****
                $conn->{CursorLocation} = $tmpCursorLocation;
  
                DBI->connect('dbi:Sponge:','','', { RaiseError => 1 })->prepare(
!                       $QueryType, { rows => [EMAIL PROTECTED], NAME =>
!                       [ qw( TABLE_CAT TABLE_SCHEM TABLE_NAME COLUMN_NAME DATA_TYPE 
TYPE_NAME COLUMN_SIZE BUFFER_LENGTH DECIMAL_DIGITS NUM_PREC_RADIX NULLABLE REMARKS 
COLUMN_DEF SQL_DATA_TYPE SQL_DATETIME_SUB CHAR_OCTET_LENGTH ORDINAL_POSITION 
IS_NULLABLE ) ]});
        }
  
        sub primary_key_info {
--- 1141,1150 ----
                $conn->{CursorLocation} = $tmpCursorLocation;
  
                DBI->connect('dbi:Sponge:','','', { RaiseError => 1 })->prepare(
!                       $QueryType, { rows => [EMAIL PROTECTED]
!                       , NAME => [ qw( TABLE_CAT TABLE_SCHEM TABLE_NAME COLUMN_NAME 
DATA_TYPE TYPE_NAME COLUMN_SIZE BUFFER_LENGTH DECIMAL_DIGITS NUM_PREC_RADIX NULLABLE 
REMARKS COLUMN_DEF SQL_DATA_TYPE SQL_DATETIME_SUB CHAR_OCTET_LENGTH ORDINAL_POSITION 
IS_NULLABLE ) ]
!                       , TYPE => [            12,         12,        12,         12,  
      5,       12,          4,            4,             5,             5,       5,    
 12,        12,            5,               5,                4,               4,      
   12   ]
!               });
        }
  
        sub primary_key_info {
***************
*** 1177,1184 ****
                        $conn->{CursorLocation} = $tmpCursorLocation;
  
                        DBI->connect('dbi:Sponge:','','', { RaiseError => 1 
})->prepare(
!                               $QueryType, { rows => [EMAIL PROTECTED], NAME =>
!                       [ qw( TABLE_CAT TABLE_SCHEM TABLE_NAME COLUMN_NAME KEY_SEQ 
PK_NAME ) ]});
        }
  
    
--- 1179,1188 ----
                        $conn->{CursorLocation} = $tmpCursorLocation;
  
                        DBI->connect('dbi:Sponge:','','', { RaiseError => 1 
})->prepare(
!                               $QueryType, { rows => [EMAIL PROTECTED]
!                               , NAME => [ qw( TABLE_CAT TABLE_SCHEM TABLE_NAME 
COLUMN_NAME KEY_SEQ PK_NAME ) ]
!                               , TYPE => [            12,         12,        12,      
   12,      5,     12   ]
!                       });
        }
  
    
***************
*** 1223,1230 ****
                $conn->{CursorLocation} = $tmpCursorLocation;
  
                DBI->connect('dbi:Sponge:','','', { RaiseError => 1 })->prepare(
!                       $QueryType, { rows => [EMAIL PROTECTED], NAME =>
!                       [ qw( PKTABLE_CAT PKTABLE_SCHEM PKTABLE_NAME PKCOLUMN_NAME 
FKTABLE_CAT FKTABLE_SCHEM FKTABLE_NAME FKCOLUMN_NAME KEY_SEQ UPDATE_RULE DELETE_RULE 
FK_NAME PK_NAME DEFERRABILITY ) ]});
        }
  
        sub type_info_all {
--- 1227,1236 ----
                $conn->{CursorLocation} = $tmpCursorLocation;
  
                DBI->connect('dbi:Sponge:','','', { RaiseError => 1 })->prepare(
!                       $QueryType, { rows => [EMAIL PROTECTED]
!                       , NAME => [ qw( PKTABLE_CAT PKTABLE_SCHEM PKTABLE_NAME 
PKCOLUMN_NAME FKTABLE_CAT FKTABLE_SCHEM FKTABLE_NAME FKCOLUMN_NAME KEY_SEQ UPDATE_RULE 
DELETE_RULE FK_NAME PK_NAME DEFERRABILITY ) ]
!                       , TYPE => [              12,           12,          12,        
   12,         12,           12,          12,           12,      5,          5,        
  5,     12,     12,            5   ]
!               });
        }
  
        sub type_info_all {

Reply via email to