我试图从SourceForge使用SchemaCrawler实用程序获得Oracle数据库模式的文本转储。在命令行
提供以下参数./sc.sh -driver=oracle.jdbc.driver.OracleDriver
-host=<hostName>
-port=<portNumber>
-database=iknowit
-schemas=IM_OWNER
-user=im_owner
-password=im_owner
-table_types=TABLE,VIEW
-infolevel=maximum
-command=schema > dump-AF_ITA.txt
然而,它会卡在一个特定的点上,看起来像一个无限循环
schemacrawler.schema.IndexColumnSortSequence valueOfFromCode异常
未知代码null
根据@Sualeh Fatehi在https://sourceforge.net/p/schemacrawler/discussion/495990/thread/b4781831/上的建议,我使用了-loglevel=ALL和- infollevel =standard,而不是建议的minimum。
最初我也注意到我只得到表名,然后我修改schemacrawler.config.properties并将所有文本格式选项设置为true,因为我需要整个表定义
schemacrawler.format.show_unqualified_names=true
schemacrawler.format.hide_primarykey_names=true
schemacrawler.format.hide_foreignkey_names=true
schemacrawler.format.hide_index_names=true
schemacrawler.format.hide_constraint_names=true
那起作用了!
感谢Sualeh Fatehi提供的帮助和如此伟大的可配置实用程序。
欢呼,Heena