Microsoft MVP성태의 닷넷 이야기
오류 유형: 31. SQL Compact Edition 설치 후 오류 [링크 복사], [링크+제목 복사],
조회: 20570
글쓴 사람
정성태 (techsharer at outlook.com)
홈페이지
첨부 파일
 


SQL Compact Edition 설치 후 오류


이번에는, SQL Server Compact Edition 을 설치한 경우에 발생할 수 있는 오류 현상에 대해서 설명해 보겠습니다. 일단, 경험으로 봐서는 단독 설치한 경우에는 발생하지 않고 SQL Server(Express)버전과 함께 설치되었을 때 발생하는 것 같습니다.

오류의 정확한 원인은 일단 다음에 살펴 보기로 하고, 임시로 문제를 해결할 수 있는 방법만을 설명드리겠습니다.

우선, 어떤 오류 현상들을 볼 수 있는지 나열해 보겠습니다.

1. SQL Server Management Studio Express 에서 DB 를 생성하고, 관련 DB 에 테이블을 생성하려 할 때 다음과 같은 오류가 발생합니다.

sql_ce_error_1.PNG

"
Exception has been thrown by the target of an invocation. (Microsoft.SqlServer.Express.SQLEditors)

Additional informations
 - An error occurred createing the configuration section handler for system.data:
   Column 'InvariantName' is constrained to be unique.
   Value 'Microsoft.SqlServerCe.Client' is already present.
   (C:\Windows\Microsoft.nET\Framework\v2.0.50727\Config\machine.config line 128)
   (System.Configuration)
    - Column 'InvariantName' is constrained to be unique.
      Value 'Microsoft.SqlServerCe.Client' is already present. (System.Data)
"

2. Visual Studio.NET 의 "Server Explorer"를 이용해서 새로운 DB 를 등록하려 할때 다음과 같은 오류창이 뜨게 됩니다.

sql_ce_error_2.PNG




이를 해결하기 위해서는 위의 1번 현상에서 보았던 경로의 "machine.config" 파일을 열어서 다음의 라인을 주석처리해야만 됩니다.

  <system.data>
    <DbProviderFactories>
      <add name="Odbc Data Provider" ... PublicKeyToken=b77a5c561934e089" />
      <add name="OleDb Data Provider" ... PublicKeyToken=b77a5c561934e089" />
      <add name="OracleClient Data Provider" ... PublicKeyToken=b77a5c561934e089" />
      <add name="SqlClient Data Provider" ... PublicKeyToken=b77a5c561934e089" />
      <!--add name="SQL Server CE Data Provider" 
      invariant="Microsoft.SqlServerCe.Client" 
      description=".NET Framework Data Provider for Microsoft SQL Server 2005 Mobile Edition" 
      type="Microsoft.SqlServerCe.Client.SqlCeClientFactory, Microsoft.SqlServerCe.Client, 
      Version=9.0.242.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91" /-->
      <add name="SQL Server Compact Edition Data Provider" ... PublicKeyToken=89845dcd8080cc91" />
      <add name="SQL Server Compact Edition Client Data Provider" ... PublicKeyToken=89845dcd8080cc91" />
    </DbProviderFactories>
  </system.data>

물론, 이렇게 하면, Compact Edition 동작 관련해서는 분명히 오류가 발생할 것입니다. 해보진 않았지만, 어쩌면 상황에 따라서 서로의 provider 를 토글식으로 enable/disable 시켜야 할지도 아직은 명확하게 정리가 안되었습니다.

어쨌든 일단, 오늘은 여기까지만. ^^




[이 토픽에 대해서 여러분들과 의견을 공유하고 싶습니다. 틀리거나 미흡한 부분 또는 의문 사항이 있으시면 언제든 댓글 남겨주십시오.]







[최초 등록일: ]
[최종 수정일: 3/18/2007]

Creative Commons License
이 저작물은 크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.
by SeongTae Jeong, mailto:techsharer at outlook.com

비밀번호

댓글 작성자
 




... 46  47  48  49  50  51  52  53  54  55  56  57  58  59  [60]  ...
NoWriterDateCnt.TitleFile(s)
12472정성태1/3/202118836디버깅 기술: 178. windbg - 디버그 시작 시 스크립트 실행
12471정성태1/1/202119647.NET Framework: 992. C# - .NET Core 3.0 이상부터 제공하는 runtimeOptions의 rollForward 옵션 [1]
12470정성태12/30/202019710.NET Framework: 991. .NET 5 응용 프로그램에서 WinRT API 호출 [1]파일 다운로드1
12469정성태12/30/202023979.NET Framework: 990. C# - SendInput Win32 API를 이용한 가상 키보드/마우스 [1]파일 다운로드1
12468정성태12/30/202020770Windows: 186. CMD Shell의 "Defaults"와 "Properties"에서 폰트 정보가 다른 문제 [1]
12467정성태12/29/202020683.NET Framework: 989. HttpContextAccessor를 통해 이해하는 AsyncLocal<T> [1]파일 다운로드1
12466정성태12/29/202018153.NET Framework: 988. C# - 지연 실행이 꼭 필요한 상황이 아니라면 singleton 패턴에서 DCLP보다는 static 초기화를 권장 [1]파일 다운로드1
12465정성태12/29/202021850.NET Framework: 987. .NET Profiler - FunctionID와 연관된 ClassID를 구할 수 없는 문제
12464정성태12/29/202019580.NET Framework: 986. pptfont.exe - PPT 파일에 숨겨진 폰트 설정을 일괄 삭제
12463정성태12/29/202018524개발 환경 구성: 520. RDP(mstsc.exe)의 다중 모니터 옵션 /multimon, /span
12462정성태12/27/202021091디버깅 기술: 177. windbg - (ASP.NET 환경에서 유용한) netext 확장
12461정성태12/21/202020788.NET Framework: 985. .NET 코드 리뷰 팁 [3]
12460정성태12/18/202018808기타: 78. 도서 소개 - C#으로 배우는 암호학
12459정성태12/16/202020395Linux: 35. C# - 리눅스 환경에서 클라이언트 소켓의 ephemeral port 재사용파일 다운로드1
12458정성태12/16/202017459오류 유형: 694. C# - Task.Start 메서드 호출 시 "System.InvalidOperationException: 'Start may not be called on a task that has completed.'" 예외 발생 [1]
12457정성태12/15/202018504Windows: 185. C# - Windows 10/2019부터 추가된 SIO_TCP_INFO파일 다운로드1
12456정성태12/15/202019508VS.NET IDE: 156. Visual Studio - "Migrate packages.config to PackageReference"
12455정성태12/15/202018974오류 유형: 693. DLL 로딩 시 0x800704ec - This Program is Blocked by Group Policy [1]
12454정성태12/15/202019446Windows: 184. Windows - AppLocker의 "DLL Rules"를 이용해 임의 경로에 설치한 DLL의 로딩을 막는 방법 [1]
12453정성태12/14/202020432.NET Framework: 984. C# - bool / BOOL / VARIANT_BOOL에 대한 Interop [1]파일 다운로드1
12452정성태12/14/202020768Windows: 183. 설정은 가능하지만 구할 수는 없는 TcpTimedWaitDelay 값
12451정성태12/14/202018298Windows: 182. WMI Namespace를 열거하고, 그 안에 정의된 클래스를 열거하는 방법 [5]
12450정성태12/13/202019603.NET Framework: 983. C# - TIME_WAIT과 ephemeral port 재사용파일 다운로드1
12449정성태12/11/202020679.NET Framework: 982. C# - HttpClient에서의 ephemeral port 재사용 [2]파일 다운로드1
12448정성태12/11/202022264.NET Framework: 981. C# - HttpWebRequest, WebClient와 ephemeral port 재사용파일 다운로드1
12447정성태12/10/202020430.NET Framework: 980. C# - CopyFileEx API 사용 예제 코드파일 다운로드1
... 46  47  48  49  50  51  52  53  54  55  56  57  58  59  [60]  ...