2007~2011/SQL Server2009. 7. 7. 00:01
SQL Server 2000 의 샘플 데이터베이스를 SQL Server 2005 에 Attach 했더니 SSMS 에서 보고서 출력이 되지 않습니다. 어떤 문제가 있는 것일까요? 호환성 이슈에 대해서 아래와 같이 정리하였습니다.


[환경]
SQL Server 2005 


[현상] 
SQL Server 2000 에서 제공하는 Sample Database 인 Pub DB를 SQL Server 2005 에 attach 한 후 SSMS 에서 Pubs 데이터베이스 - 보고서 - 표준보고서를 선택하였을 때 아래와 같은 메시지가 발생합니다.

데이터베이스의 호환성 수준이 80이므로 보고서를 표시할 수 없습니다. 이 보고서를 보려면 [데이터베이스 속성] 대화 상자를 사용하여 호환성 수준을 SQL Server 20005 (90)로 변경해야 합니다.




정상적인 경우에는 아래와 같이 보고서가 출력됩니다.




[원인]
SSMS 에서 보고서 출력을 위해서는 데이터베이스 호환성 수준이 SQL Server 2005 (90) 이상으로 설정되어 있어야 합니다. Pubs 데이터베이스의 호환성 수준은 SQL Server 2000(80) 입니다.


[해결방안]
호환성 수준을 SQL Server 2005(90) 로 변경합니다.

USE [master]
GO
EXEC dbo.sp_dbcmptlevel @dbname=N'pubs', @new_cmptlevel=90
GO



[분석결과]
데이터베이스 호환성 수준 확인
SELECT NAME, COMPATIBILITY_LEVEL FROM SYS.DATABASES

NAME          COMPATIBILITY_LEVEL
------------------------------------
master         90
tempdb        90
model          90
msdb           90
Profiler         90
laigo            90
pubs         80


호환성 수준 차이점에 대해서는 아래 링크된 technet 문서를 참조할 수 있습니다.


[참고자료]


작성자 : Lai Go / 작성일자 : 2009.07.06
Posted by Lai Go