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 {