JDBC中的getExportedKeys()在mysql中返回空集
我使用的是JDBC中的getExportedKeys()在mysql中返回空集,mysql,jdbc,Mysql,Jdbc,我使用的是getExportedKeysJDBC方法。它在Oracle中运行良好,但在MySQL中返回的是空集。我尝试使用useInformationSchema=true,但它仍然返回空集。 让我知道getTables、getExportedKeys、getImportedKeys是否适用于MySQL、sql、DB2、Postgres数据库。这取决于您使用的驱动程序和数据源。 一些DataSorce实现提供了启用禁用DatabaseMetadata以获得更好性能的选项 例如:请参阅链接中的以下
getExportedKeys
JDBC方法。它在Oracle中运行良好,但在MySQL中返回的是空集。我尝试使用useInformationSchema=true
,但它仍然返回空集。让我知道
getTables、getExportedKeys、getImportedKeys是否适用于MySQL、sql、DB2、Postgres数据库。这取决于您使用的驱动程序和数据源。
一些DataSorce实现提供了启用禁用DatabaseMetadata以获得更好性能的选项
例如:请参阅链接中的以下信息
--->>目录选项
确定当应用程序调用DatabaseMetaData方法时,结果集中包含哪种类型的元数据信息
有效值:0 | 2 | 6,默认值为2
如果为0,则结果集不包含同义词
如果为2,则结果集包含从以下数据库元数据方法返回的同义词:getColumns()、getExportedKeys()、getFunctionColumns()、getFunctions()、getImportedKeys()、getIndexInfo()、getPrimaryKeys()、GetProceducedRecolumns()和getProcedures()
如果为6,则会提示驱动程序使用ResultSetMetaData对象模拟getColumns()调用,而不是查询数据库目录以获取列信息。结果集包含同义词。使用仿真可以提高性能,因为仿真生成的SQL语句比使用getColumns()生成的SQL语句复杂。getColumns()的参数必须计算为单个表。如果没有,例如,由于通配符或空值,驱动程序将恢复为getColumns()调用的默认行为。