Tôi sẽ để lại nhiệm vụ tìm phụ thuộc chéo db cho người khác để viết về khi tôi định chạy ra khỏi cửa sáng nay nhưng muốn để lại ghi chú nhanh về sp_depends. Nó bị hỏng, đừng dùng nó. Nó nổi tiếng là không đáng tin cậy. Theo Microsoft "Sử dụng sys.dm_sql_referencing_entities và sys.dm_sql_referenced_entities thay vào đó" nó là trên đường ra. Đây là lý do tại sao sp_depends bị hỏng, nó dựa trên thứ tự sáng tạo. Giả sử bạn có hai thủ tục được lưu trữ, ProcA và ProcB. ProcB phụ thuộc vào ProcA. Nếu bạn tạo ra ProcA THEN tạo ra procB sp_depends sẽ báo cáo sự phụ thuộc, nhưng do hỗ trợ cho cuối ràng buộc, nếu bạn tạo ra ProcB, THEN tạo procA sp_depends sẽ không báo cáo sự phụ thuộc.
Đối với những gì đáng giá, có một công cụ tuyệt vời để báo cáo phụ thuộc đúng cách nhưng yêu thích của tôi cho đến thời điểm này, và nó sẽ xử lý phụ thuộc db chéo nếu bạn có quyền truy cập vào nó là Visual Studio Chuyên gia cơ sở dữ liệu. Nó khá chi tiêu nhưng nếu bạn có quyền truy cập vào nó có công cụ phụ thuộc tuyệt vời và hỗ trợ tái cấu trúc ánh sáng, bạn có thể thay đổi tên của cột, nó có thể tìm tất cả các khung nhìn và thủ tục, ngay cả trong nhiều dbs và cập nhật tên cột cho bạn phụ thuộc của bạn.
Đối với một giao diện đơn giản thay thế GUI đơn giản, ApexSql tạo ra một công cụ tốt đẹp. Về mặt tự do, bạn có thể tìm hoặc tạo một thủ tục lưu sẵn để thực hiện kiểm tra sự phụ thuộc cho bạn nhưng tôi không có bất kỳ liên kết nào để giúp bạn thực hiện điều đó ngay bây giờ.
Nguồn
2009-01-03 19:28:14
Làm cách nào để bạn tạo phụ thuộc vào cơ sở dữ liệu? –