2012-11-28 45 views
12

Một câu hỏi thông tin nhanh chóng:SQL Server tương thích ý nghĩa mức

On tôi SQL Server 2008, tôi có cơ sở dữ liệu di cư từ SQL Server 2005 và mức độ phù hợp của cơ sở dữ liệu trên SQL Server 2008 được thiết lập để 90 (SQL Server 2005).

Chính xác điều đó có nghĩa gì?

Điều đó có nghĩa là các thủ tục, trình kích hoạt và chức năng được lưu trữ di chuyển sẽ hoạt động tốt trên SQL Server 2008, nhưng có bất kỳ nhược điểm nào không?

Điều gì có thể là lý do để đặt mức độ tương thích thành 100 (SQL Server 2008)?

Hiệu suất? Tính năng bổ sung?

Thanx

+0

có thể trùng lặp của [Sự khác biệt và gotchas khi thay đổi chế độ tương thích SQL Server từ 90 đến 100 là gì?] (Http://stackoverflow.com/questions/3351312/what -are-the-difference-và-gotchas-khi-thay đổi-sql-server-compat-mode-from-9) – Pondlife

Trả lời

8

chế độ Compatibility là có để giúp mọi người di chuyển các ứng dụng có chức năng mà không còn tương thích với các phiên bản mới hơn của SQL. Nếu bạn có các ứng dụng yêu cầu các hàm không còn được hỗ trợ trong sql 2008, bạn sẽ muốn chạy chúng trong chế độ tương thích; nếu không bạn muốn sử dụng chế độ sql hiện tại. Kinh doanh của chúng tôi chạy một ứng dụng do cách nó kết nối với cơ sở dữ liệu đòi hỏi chế độ tương thích SQL 2000; nhưng nó đang chạy trên một máy chủ SQL 2012.

Các chức năng cụ thể trong mã có thể tác động đến hiệu suất vì logic bắt buộc khác với việc thực thi khác biệt cụ thể. Như một quy tắc rất tổng quát mã SQL tối ưu hóa cho các chức năng trên 2012,2008 sẽ nhanh hơn SQL 2000 hoặc SQL 7 vì chúng đã thêm những thứ như CTE và un/pivot cả hai đều cho phép mã hóa đơn giản.

1

Không có khả năng sử dụng bất kỳ tính năng mới nào bao gồm các tính năng sau khi cải tiến trong Trình tối ưu hóa truy vấn (trong SQL Server 2014), ở lại chế độ tương thích giúp việc nâng cấp trong tương lai trở nên khó khăn hơn. MSDN có danh sách khác nhau giữa các ấn bản http://msdn.microsoft.com/en-us/library/bb510680%28v=sql.110%29.aspx

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