Java 获取列的自定义类型名SQLite

Java 获取列的自定义类型名SQLite,java,sql,sqlite,jdbc,types,Java,Sql,Sqlite,Jdbc,Types,我试图使用ResultSet为SQLite表中的一列获取自定义类型名称:UUID,但我想不出任何方法。我尝试使用ResultSetMetaData.getColumnTypeName,但似乎不起作用 根据ResultSetMetaData文档,它似乎应该: 返回:数据库使用的类型名称。如果列类型是用户定义的类型,则返回完全限定的类型名称 但是,如果列没有数据,则方法类型返回null,如果有数据,则返回text 是否有其他方法可以做到这一点,而不必每次使用PRAGMA table_info进行第二

我试图使用ResultSet为SQLite表中的一列获取自定义类型名称:UUID,但我想不出任何方法。我尝试使用ResultSetMetaData.getColumnTypeName,但似乎不起作用

根据ResultSetMetaData文档,它似乎应该:

返回:数据库使用的类型名称。如果列类型是用户定义的类型,则返回完全限定的类型名称

但是,如果列没有数据,则方法类型返回null,如果有数据,则返回text


是否有其他方法可以做到这一点,而不必每次使用PRAGMA table_info进行第二次查询?在这一点上,我也没有对表名的引用,只是对结果集的引用,所以这会很困难。

在SQLite中,不是所有内容都是文本类型吗?SQLite中没有UUID类型,SQLite中有很多类型。UUID是字符串,文本是值的类型。我正在尝试检索我分配给列的类型名,它是UUIDI,我刚刚用sqlite-jdbc-3.18.0.jar尝试了ResultSetMetaDatagetColumnTypeName,当我从表1中选择*时,它为我返回了UUID。代码。@GordThompson agghh谢谢。我使用的是非常过时的驱动程序版本: