Chúng tôi đang di chuyển cơ sở dữ liệu của mình sang một lược đồ mới nhưng muốn xác thực dữ liệu đã được di chuyển chính xác.
Các công cụ so sánh dữ liệu truyền thống có thể so sánh hai cơ sở dữ liệu về sự khác biệt nếu các lược đồ giống nhau. Trong trường hợp của chúng tôi, đã có thay đổi đối với các thiết kế bảng nhưng tất cả dữ liệu từ lược đồ cũ đều nằm trong bảng mới, nó chỉ được di chuyển xung quanh một chút và tôi cần đảm bảo rằng nó là chính xác. Chúng tôi có hàng chục triệu hàng nên kiểm tra thủ công không phải là một lựa chọn.
Có công cụ nào có thể hỗ trợ cho kiểu so sánh này không?
Nếu không có thư viện / khung nào có thể giúp khởi động sự phát triển của một giải pháp tùy chỉnh?
Tôi rất vui khi sử dụng một giải pháp cụ thể cho cơ sở dữ liệu nếu cần thiết, trong trường hợp này cho SQL Server 2008.
Giải pháp của tôi: Tôi đang so sánh hai tập dữ liệu bằng cách tạo một VIEW
bảng cho mỗi cơ sở dữ liệu cũ với cùng các trường với bảng cơ sở dữ liệu mới.
Sau đó, tôi so sánh dữ liệu bằng cách sử dụng kỹ thuật được mô tả ở đây: Cách ngắn nhất, nhanh nhất và dễ nhất để so sánh hai bảng trong SQL Server: UNION!
Tôi may mắn trong việc di chuyển này vì cấu trúc bảng tổng thể tương tự như cơ sở dữ liệu cũ, với các trường được chuyển từ bảng này sang bảng khác, bị bỏ hoặc thêm. Trong trường hợp bỏ và thêm vào, không có gì để so sánh, đối với các trường đã di chuyển hoặc được tổng hợp, tôi thực hiện các phép tính trong chế độ xem để cung cấp thông tin chính xác để so sánh.
Các UNION
chương trình so sánh tôi chỉ có các hàng với sự khác biệt, vì vậy ngay sau khi dữ liệu là đúng tôi nhận được một tập kết quả trống.