SSMS 테이블 "상위200개 행 편집" 에러 'DbProviderFactories' 섹션~ 에러
SSMS 2012 설치후
해당 테이블에서 "상위200개 행 편집" 클릭시
다음과 같은 에러가 발생하여 몇일 고생했다.
기존 32비트 윈7에서 사용하다. 64비트 윈7으로 변경하고 새로 설치한 상황이었다.
에러는 다음과 같다.
제목: Microsoft SQL Server Management Studio
------------------------------
호출 대상이 예외를 Throw했습니다. (SQLEditors)
------------------------------
추가 정보:
'DbProviderFactories' 섹션은 구성 파일별로 하나만 사용할 수 있습니다. (System.Configuration)
(영문)
------------------------------
Exception has been thrown by the target of an invocation. (SQLEditors)
------------------------------
추가 정보:
The 'DbProviderFactories' section can only appear once per config file. (System.Configuration)
(해결)
다음 닷넷프레임워크 파일과 관련이 있다.
(64비트경우)
C:\Windows\Microsoft.NET\Framework64\v2.0.50727\CONFIG\Machine.Config
C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Config\Machine.Config
SSMS가 잘 실행되는 컴퓨터의 파일과 비교해보니
두 번째 닷네 4.0 관련파일의 'DbProviderFactories' 섹션이 두번 정의되어 있었다.
아마 델파이 설치할 때 문제가 생긴것 같다.
다음 처럼 <DbProviderFactories/> 한 줄만 남기고 지우고 저장했다.
잘 해결되었고 SSMS 잘 된다.
(결론)
좀 처럼 찾기 힘든 에러였는데 영문에러를 구글링하여 찾았다.
에러를 한글로 보여주는 것이 좋은 것 만은 아니다.
시행착오하다 영문버전을 설치해보길 잘 한것 같다. 그래야 에러도 영문으로 나타나니까.
SSMS 2012 32비트도 설치해보고 SSMS 2014 도 설치해 보고 많은 시간을 소모했다.
닷넷프레임워크과 관련된 것이니 더욱이 복잡했다.
닷넷프레임워크에 대해 조금 이해하는 계기가 되었다.
<추가>
윈도우 10의 경우
C:\windows\Microsoft.NET\Framework\v2.0.50727\CONFIG
경로의 Machine.Config 도 동일한 작업이 필요한 경우가 있다.