Tôi đã tổng hợp một chuyển đổi mẫu (nhấp chuột phải và chọn lưu liên kết) dựa trên những gì bạn đã cung cấp. Bước duy nhất tôi cảm thấy hơi không chắc chắn là đầu vào bảng cuối cùng. Về cơ bản, tôi đang ghi dữ liệu kết hợp vào bảng và để nó không thành công nếu một mối quan hệ cụ thể đã tồn tại.
lưu ý:
Giải pháp này không thực sự đáp ứng được quy định "Tất cả các phương pháp nên bao gồm một số từ xác thực và chiến lược khôi phục nếu chèn không thành công hoặc không duy trì tính toàn vẹn tham chiếu." tiêu chí, mặc dù nó có thể sẽ không thất bại. Nếu bạn thực sự muốn thiết lập một thứ gì đó phức tạp, chúng tôi có thể làm được nhưng điều này chắc chắn sẽ giúp bạn thực hiện được những chuyển đổi này.
Luồng dữ liệu theo từng bước
1. Chúng tôi bắt đầu với việc đọc trong tệp của bạn. Trong trường hợp của tôi, tôi đã chuyển đổi nó thành CSV nhưng tab cũng ổn.
2. Bây giờ chúng ta sẽ chèn tên nhân viên vào bảng Nhân viên bằng cách sử dụng combination lookup/update
.Sau khi chèn, chúng tôi nối thêm worker_id vào dòng dữ liệu của chúng tôi dưới dạng id
và xóa EmployeeName
từ luồng dữ liệu.
3. Ở đây chúng tôi chỉ sử dụng bước Chọn giá trị để đổi tên id
trường tới worker_id
4. Chèn Chức danh Công việc giống như chúng tôi đã làm với nhân viên và thêm id chức danh vào dòng dữ liệu của chúng tôi cũng xóa JobLevelHistory
từ dòng dữ liệu.
5. Đổi tên đơn giản của id tiêu đề thành title_id (xem bước 3)
6. Chèn các văn phòng, lấy id, xóa OfficeHistory khỏi luồng.
7. Đổi tên đơn giản của id văn phòng thành office_id (xem bước 3)
8. Sao chép Dữ liệu từ bước cuối cùng thành hai luồng với các giá trị employee_id,office_id
và employee_id,title_id
tương ứng.
9. Sử dụng bảng chèn để chèn dữ liệu nối. Tôi đã chọn nó để bỏ qua lỗi chèn vì có thể có các bản sao và các ràng buộc PK sẽ khiến một số hàng bị lỗi.
Bảng đầu ra