SQL Server

SSMS 테이블 "상위200개 행 편집" 에러 'DbProviderFactories' 섹션~ 에러

미스터몽키 2015. 9. 24. 11:54

 

 

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 잘 된다. 

 

 

(결론)

 

좀 처럼 찾기 힘든 에러였는데 영문에러를 구글링하여 찾았다.

 

http://stackoverflow.com/questions/20208460/sql-server-management-studio-error-when-trying-to-edit-table

 

에러를 한글로 보여주는 것이 좋은 것 만은 아니다.

시행착오하다 영문버전을 설치해보길 잘 한것 같다. 그래야 에러도 영문으로 나타나니까.

 

SSMS 2012 32비트도 설치해보고 SSMS 2014 도 설치해 보고 많은 시간을 소모했다.

 

닷넷프레임워크과 관련된 것이니 더욱이 복잡했다.

 

닷넷프레임워크에 대해 조금 이해하는 계기가 되었다.

 

 

<추가>

윈도우 10의 경우


C:\windows\Microsoft.NET\Framework\v2.0.50727\CONFIG


경로의 Machine.Config 도 동일한 작업이 필요한 경우가 있다.