我们有客户从一个数据库版本升级到另一个(Oracle 9i 到 Oracle 10g 或 11g,具体来说)。在一种情况下,客户导出旧数据库并将其导入新数据库,但由于某种原因没有创建索引和约束。他们可能故意这样做是为了加快导入过程,但我们仍在调查原因。
真正的问题是,有没有一种简单的方法可以在导入后验证数据库的结构是否完整?我们可以对结构进行某种校验和吗?我们意识到我们可以做一堆查询来查看所有的表、索引、别名、视图、序列等是否存在,但这可能很难编写和维护。
更新
感谢您提供建议使用商业和/或 GUI 工具的答案,但我们确实需要一些免费的东西,我们可以将其与我们的产品打包在一起。它还必须是命令行或脚本驱动的,以便我们的客户可以在任何环境(unix、linux、windows)中运行它。