7

Tôi đang sao chép nhiều bảng vào cơ sở dữ liệu trên cùng một máy chủ với cơ sở dữ liệu nguồn.Sao chép máy chủ SQL không sao chép khóa ngoài

Các bảng đó có một số khóa lạ giữa chúng. Khi tôi nhìn vào các bảng được sao chép, chúng không có các khóa lạ trên chúng.

Vì vậy, đây là những câu hỏi của tôi:

  1. nên nhân rộng được sao chép các phím nước ngoài theo mặc định?
  2. Nếu không, làm thế nào tôi có thể khiến chúng tái tạo?
  3. Nếu có, điều gì sẽ khiến chúng không tái tạo?

LƯU Ý: Cơ sở dữ liệu nguồn của tôi có TableATableB. TableA có khóa chính là AId. TableB có khóa ngoại trên cột đó. Và tôi đang làm một bản sao giao dịch của cả hai TableATableB.

+0

Ồ, tôi gặp vấn đề tương tự. Tôi không có câu trả lời, nhưng có lẽ bạn cần phải đăng lược đồ của bạn và cho chúng tôi biết bạn đang sử dụng loại bản sao nào. – peter

Trả lời

6

OK, tôi đã gặp phải điều gì đó, nhưng nó sẽ phụ thuộc vào loại bản sao bạn đang sử dụng.

Tôi đang sử dụng giao dịch replcation. Tìm các ấn phẩm bạn đang sử dụng ở đây,

(Management Studio) Replication -> ấn ​​phẩm địa phương -> (Publication)

Nhấp chuột phải vào bản và chọn Properties, sau đó trong bài báo nhấn chuột phải 'Bàn' và chọn tùy chọn 'Đặt thuộc tính của tất cả các bài báo'.

Trong đó mục đầu tiên là 'Sao chép các ràng buộc khóa ngoại'.

Chưa thử, nhưng tôi hy vọng nó hoạt động.

Bạn cũng có thể áp dụng các cài đặt này cho mỗi bảng nếu bạn nhấp chuột phải vào một bảng và chọn tùy chọn 'Đặt thuộc tính của bài viết này'.

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