java – 使用Spring的JDBC慢速元数据获取Oracle
发布时间:2020-12-15 01:47:33 所属栏目:大数据 来源:网络整理
导读:我使用Spring JdbcUtils.extractDatabaseMetaData()方法来分析数据库.该函数调用回调并移交DatabaseMetaData对象.此对象提供getColumns(String catalog,String schemaPattern,String tableNamePattern,String columnNamePattern). 我把它称为getColumns(“”
我使用Spring JdbcUtils.extractDatabaseMetaData()方法来分析数据库.该函数调用回调并移交DatabaseMetaData对象.此对象提供getColumns(String catalog,String schemaPattern,String tableNamePattern,String columnNamePattern). 我把它称为getColumns(“”,TABLE_OWNER_USERNAME,null,null),结果得到400列.这些正是我想要的结果,但请求需要1分钟. 我可以以某种方式优化此查询以快速?拉动400行应该在1秒而不是1分钟内完成. 编辑:我不怀疑Spring部分很慢.更仔细的分析表明,获取DatabaseMetaData需要几秒钟的时间,执行getColumns()需要很长时间. 最佳答案
也许这是查询ALL_TAB_COLUMNS的更好方法.这是一个例子:
如果您需要按表格过滤,只需添加“AND TABLE_NAME =?”将sql和tableName作为另一个参数. 希望能帮助到你. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |