Tôi có cảm giác rằng có một số khác biệt giữa hai lược đồ Oracle phức tạp lớn giống hệt nhau, vì vậy đã quyết định kết xuất và tìm chúng để điều tra. Tôi đã tìm thấy một bài viết ( http://www.dba-oracle.com/art_builder_get_schema_syntax.htm ) đưa ra các lệnh sau để kết xuất các định nghĩa bảng và chỉ mục.
SELECT DBMS_METADATA.GET_DDL('TABLE',u.table_name) FROM USER_TABLES u;
SELECT DBMS_METADATA.GET_DDL('INDEX',u.index_name) FROM USER_INDEXES u;
Tuy nhiên, khi tôi đổ và làm khác biệt các đầu ra của các lược đồ, có sự khác biệt nhỏ trên hầu hết mọi dòng làm cho sự khác biệt trở nên vô giá trị. Ví dụ, tên lược đồ được bao gồm trong mỗi định nghĩa bảng.
Có cách nào tốt hơn để làm điều này sẽ cung cấp dữ liệu lược đồ quan trọng nhất theo định dạng có thể dễ dàng so sánh bằng cách sử dụng công cụ tìm khác biệt. Tôi quan tâm đến các bảng, chỉ mục và kích hoạt.
Tôi đang sử dụng Cơ sở dữ liệu Oracle 10g Phiên bản doanh nghiệp Phiên bản 10.2.0.3.0