On Sun, 7 Mar 2010, Thomas Kellerer wrote:
>> When creating types using e.g.:
>>
>> CREATE TYPE my_tabpe AS (some_data varchar(100));
>>
>> DatabaseMetaData.getTables() will return that type, but the value for
>> the column TABLE_TYPE is null.
>>
>> I think if the driver returns non-table objects (which is fine, a lot of
>> drivers are doing that), the TABLE_TYPE column of the result set should
>> contain a proper value.
>>
>
> I had a quick look at the source code, and it seems quite simple to fix.
>
> I have attached a patch agains CVS head which (as far as I can tell)
> fixes this. It also supports getTables() passing "TYPE" in the String
> array to select which types to show.
>
> I hope the patch is OK, I have not used the diff tool before ;)
>
I've applied this with additional code to separate out temporary views and
temporary sequences. A couple of notes on your patch for future
reference:
1) You have it reversed. The patch is taking out your changes rather than
adding them.
2) There are two CASE statements that convert relkind to TABLE_TYPE and
you only got one of them.
Kris Jurka