2012-01-24 30 views
6

Tôi đang cố gắng sao chép các thay đổi từ DatabaseA sang DatabaseB, tuy nhiên tôi không biết chính xác những thay đổi đó là gì.Làm thế nào tôi có thể tìm thấy sự khác biệt giữa hai cơ sở dữ liệu?

Có tập lệnh SQL xung quanh sẽ tìm thấy các đối tượng khác nhau giữa các cơ sở dữ liệu, sau đó tạo tập lệnh để cập nhật DatabaseB để khớp với DatabaseA không?

Tôi đang sử dụng SQL 2005, và tôi không muốn mất các dữ liệu hiện có trong DatabaseB

+0

Bạn có thể nhận được câu trả lời hay hơn trên trang web cho DBA: http://dba.stackexchange.com/ –

+3

Kiểm tra So sánh SQL Cổng đỏ. – Yuck

+0

+1 cho So sánh SQL. Nhiều như tôi ghét redgate cho butchering Reflector, nó là một sản phẩm chất lượng. – Jamiec

Trả lời

3

Có các công cụ so sánh lược đồ và dữ liệu từ Cổng đỏ thực hiện chính xác những gì bạn đang tìm kiếm. Ngoài ra còn có một số người khác trên thị trường, như So sánh SQL Apex. Nhưng, nếu bạn đủ may mắn để có phiên bản Visual Studio 2010 Premium hoặc Ultimate, có một công cụ so sánh được tích hợp trong các phiên bản đó.

http://www.apexsql.com/default.aspx

http://www.red-gate.com/products/sql-development/sql-compare

http://msdn.microsoft.com/en-us/library/dd193250.aspx

Nếu không, bạn sẽ phải sử dụng các máy chủ liên kết và rất nhiều truy vấn so với INFORMATION_SCHEMA.

Một số công cụ phần mềm bạn có thể sử dụng trên cơ sở dùng thử và có thể có được những gì bạn cần mà không cần mua giấy phép đầy đủ.

+0

Cảm ơn bạn, tôi không biết rằng VS 2010 Premium/Ultimate có tính năng này. Tôi cũng muốn thử phần mềm của Redgate vì tôi thích Reflector. – Rachel

+0

RedGate là công cụ lựa chọn của tôi, nhưng nó không phải là không tốn kém. Chúc may mắn! – Vinnie

7

Hãy thử DBComparer.

+0

Tính năng này có hoạt động trên SQL Server 2016 trở lên không? Nó nói 2008 và 2005 trên trang web? –

+1

@UsamaAhmed có, tôi đã thử hôm nay và hoạt động tuyệt vời. –

2

Tôi đã sử dụng "So sánh SQL" và "So sánh dữ liệu SQL" theo Red Gate Software và chúng hoạt động như một nét duyên dáng. Tôi không cho rằng có tồn tại một kịch bản để làm cùng một công việc, bởi vì nếu nó tồn tại, thì sẽ không có sử dụng và không có thị trường cho các sản phẩm này.

0

Tôi sử dụng AdeptSQL Diff. Đó là một sản phẩm thương mại có tại số www.adeptsql.com. Tôi nghĩ rằng giấy phép dùng thử là 30 ngày hoặc 50 lần khởi động.

Các vấn đề liên quan