Microsoft MVP성태의 닷넷 이야기
오류 유형: 31. SQL Compact Edition 설치 후 오류 [링크 복사], [링크+제목 복사],
조회: 20684
글쓴 사람
정성태 (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

비밀번호

댓글 작성자
 




... 61  62  63  64  65  66  67  68  69  70  71  [72]  73  74  75  ...
NoWriterDateCnt.TitleFile(s)
12169정성태3/5/202020633개발 환경 구성: 473. Windows nanoserver에 대한 docker pull의 태그 사용 [1]
12168정성태3/5/202022189개발 환경 구성: 472. 윈도우 환경에서의 dockerd.exe("Docker Engine" 서비스)가 Linux의 것과 다른 점
12167정성태3/5/202019997개발 환경 구성: 471. C# - 닷넷 응용 프로그램에서 DB2 Express-C 데이터베이스 사용 (3) - ibmcom/db2express-c 컨테이너 사용
12166정성태3/4/202021116개발 환경 구성: 470. Windows Server 컨테이너 - DockerMsftProvider 모듈을 이용한 docker 설치
12165정성태3/2/202019518.NET Framework: 900. 실행 시에 메서드 가로채기 - CLR Injection: Runtime Method Replacer 개선 - 네 번째 이야기(Monitor.Enter 후킹)파일 다운로드1
12164정성태2/29/202020625오류 유형: 598. Surface Pro 6 - Windows Hello Face Software Device가 인식이 안 되는 문제
12163정성태2/27/202018955.NET Framework: 899. 익명 함수를 가리키는 delegate 필드에 대한 직렬화 문제
12162정성태2/26/202023523디버깅 기술: 166. C#에서 만든 COM 객체를 C/C++로 P/Invoke Interop 시 메모리 누수(Memory Leak) 발생 [6]파일 다운로드2
12161정성태2/26/202019294오류 유형: 597. manifest - The value "x64" of attribute "processorArchitecture" in element "assemblyIdentity" is invalid.
12160정성태2/26/202019539개발 환경 구성: 469. Reg-free COM 개체 사용을 위한 manifest 파일 생성 도구 - COMRegFreeManifest
12159정성태2/26/202016046오류 유형: 596. Visual Studio - The project needs to include ATL support
12158정성태2/25/202019346디버깅 기술: 165. C# - Marshal.GetIUnknownForObject/GetIDispatchForObject 사용 시 메모리 누수(Memory Leak) 발생파일 다운로드1
12157정성태2/25/202018747디버깅 기술: 164. C# - Marshal.GetNativeVariantForObject 사용 시 메모리 누수(Memory Leak) 발생 및 해결 방법파일 다운로드1
12156정성태2/25/202017295오류 유형: 595. LINK : warning LNK4098: defaultlib 'nafxcw.lib' conflicts with use of other libs; use /NODEFAULTLIB:library
12155정성태2/25/202017306오류 유형: 594. Warning NU1701 - This package may not be fully compatible with your project
12154정성태2/25/202016432오류 유형: 593. warning LNK4070: /OUT:... directive in .EXP differs from output filename
12153정성태2/23/202021003.NET Framework: 898. Trampoline을 이용한 후킹의 한계파일 다운로드1
12152정성태2/23/202019359.NET Framework: 897. 실행 시에 메서드 가로채기 - CLR Injection: Runtime Method Replacer 개선 - 세 번째 이야기(Trampoline 후킹)파일 다운로드1
12151정성태2/22/202020711.NET Framework: 896. C# - Win32 API를 Trampoline 기법을 이용해 C# 메서드로 가로채는 방법 - 두 번째 이야기 (원본 함수 호출)파일 다운로드1
12150정성태2/21/202021111.NET Framework: 895. C# - Win32 API를 Trampoline 기법을 이용해 C# 메서드로 가로채는 방법 [1]파일 다운로드1
12149정성태2/20/202019154.NET Framework: 894. eBEST C# XingAPI 래퍼 - 연속 조회 처리 방법 [1]
12148정성태2/19/202022432디버깅 기술: 163. x64 환경에서 구현하는 다양한 Trampoline 기법 [1]
12147정성태2/19/202019350디버깅 기술: 162. x86/x64의 기계어 코드 최대 길이
12146정성태2/18/202020254.NET Framework: 893. eBEST C# XingAPI 래퍼 - 로그인 처리파일 다운로드1
12145정성태2/18/202020729.NET Framework: 892. eBEST C# XingAPI 래퍼 - Sqlite 지원 추가파일 다운로드1
12144정성태2/13/202020929.NET Framework: 891. 실행 시에 메서드 가로채기 - CLR Injection: Runtime Method Replacer 개선 - 두 번째 이야기파일 다운로드1
... 61  62  63  64  65  66  67  68  69  70  71  [72]  73  74  75  ...