MS SQL Server 2000Khóa ngoại có tự động tạo chỉ mục không?
Tôi cảm thấy ngớ ngẩn khi đặt câu hỏi này, nhưng tôi đã được thông báo rằng nếu tôi có hai bàn phím ngoài, SQL Server sẽ tạo một thứ gì đó giống như chỉ mục trong bảng con. Tôi có một thời gian khó tin rằng điều này là đúng, nhưng không thể tìm thấy nhiều ra có liên quan cụ thể đến điều này.
Lý do thực sự của tôi khi yêu cầu điều này là bởi vì chúng tôi đang gặp một số thời gian phản hồi rất chậm trong tuyên bố xóa đối với bảng có thể có 15 bảng có liên quan. Tôi đã hỏi anh chàng cơ sở dữ liệu của chúng tôi và anh ấy nói rằng nếu có một khóa ngoại trên các lĩnh vực, sau đó nó hoạt động như một chỉ mục. Kinh nghiệm của bạn với điều này là gì? Tôi có nên thêm các chỉ mục trên tất cả các trường khóa ngoài hay chúng chỉ là chi phí không cần thiết?
không ngớ ngẩn khi hỏi điều này! –
Sau khi nhìn thấy một số câu trả lời, tôi đoán bạn đã đúng. Có một chút nhầm lẫn về điều này. Cảm ơn tất cả! –
Nếu bạn đang nhận được xóa chậm và bảng bạn đang xóa từ tham chiếu bởi các bảng khác, bạn có thể sẽ nhận được một tăng hiệu suất bằng cách lập chỉ mục các khóa nước ngoài trong các bảng * khác *. Điều này là do khi SQL xóa một hàng, nó cần kiểm tra tính toàn vẹn tham chiếu trên hàng. Để làm điều này, rõ ràng là cần phải kiểm tra xem không có hàng nào khác tồn tại tham chiếu đến hàng bạn đang xóa. –