programing

Oracle에 C#을 연결하는 중

batch 2023. 7. 30. 17:30
반응형

Oracle에 C#을 연결하는 중

C#(.)을 연결하는 데 가장 좋은 라이브러리/드라이버는 무엇입니까?NET) 애플리케이션을 Oracle 10g 및 11g에 적용합니다.
현재 찾은 옵션은 다음과 같습니다.

  1. 데이터베이스 설치와 함께 제공되는 Oracle 클라이언트
  2. Oracle Instant Client(운영 체제 수에 맞게 6-8개의 버전이 있기 때문에 약간 혼란스럽습니다.)
  3. Microsoft ODBC ? (사용할 수 있습니까?)
  4. ODP.Net - 이 제품은 별도입니까? 아니면 1.과 2.에 포함되어 있습니까?

누가 차이점을 설명해 줄 수 있나요?

Oracle 데이터베이스에서 기본 CRUD 작업을 수행할 C# 애플리케이션을 계획하고 있습니다.가장 작고 설치하기 쉬운 라이브러리/드라이버는 무엇입니까?


일반적으로 ODP를 사용하는 것이 좋습니다. 패키지에 대해 수 ? 이. 제, 클언이트설패치간키대차에설까답나줄있수니습넷?Oracle 11g용 클라이언트 3개를 찾았습니다.

  • 데이터베이스 설치의 일부로 제공되는 Oracle 클라이언트 드라이버 패키지
  • ODAC - Oracle 데이터 액세스 구성 요소에는 ODP가 포함되어 있습니다.Net 및 Oracle Instant 클라이언트
  • ODP.Net을 비롯한 많은 기능도 포함하는 Oracle Instant Client

그렇다면, 그 중 어느 것이 개발에 충분할까요?Oracle 설명서는 매우 상세하지만 이러한 클라이언트 패키지 간의 차이점에 대해서는 설명하지 않습니다.가장 작은 것으로 하겠습니다(인스턴트 클라이언트).그게 최선의 선택입니까?

2편집 2:
사용하고 있습니다. 3⁄3.5

Microsoft는 다음을 권장하지 않습니다.System.Client.OracleClient네임스페이스를 사용하기 때문에 ODP를 사용하는 것이 가장 좋을 것 같습니다.NET. 최신 버전(ODP)을 다운로드하십시오.이전 버전과 마찬가지로 NET 11g)에 몇 가지 문제가 있었습니다.

C#을 오라클에 연결하려면 .net용 데이터 공급자가 필요합니다.다음 중 하나일 수 있습니다.

  • ODP.Net(오라클)
  • 시스템. 데이터.Oracle 클라이언트(Microsoft)
  • ODBC(오라클)
  • OLEDB(오라클)
  • DataDirect ADO.오라클용 NET 데이터 공급자(DataDirect)
  • 다른 공급자일 수 있습니다.

모든 데이터 공급자는 Oracle 클라이언트를 설치해야 합니다.jdbc14.jar와 같은 독립 실행형 라이브러리는 java에 없습니다.Oracle 클라이언트를 구축하는 방법은 두 가지가 있습니다.

  • 전체 클라이언트(데이터베이스 설치에서 가져온 것일 수 있음)
  • 인스턴트 클라이언트

ODP.Net, ODBC, OLEDB는 전체 클라이언트의 일부입니다.소프트웨어를 실행하는 모든 클라이언트에서 설치 프로세스를 실행해야 하기 때문에 "어려운" 방법입니다.클라이언트에서 가장 많은 메가바이트가 저장되는 위치입니다.
인스턴트 클라이언트는 다른 패키지로 제공됩니다.이는 Oracle 클라이언트를 배포하는 가장 작은 방법입니다.

저는 ODP를 사용하는 것을 제안합니다.Oracle Instant Client를 사용하면 구현이 간편하고 무게가 매우 가볍습니다.

필요한 인스턴트 클라이언트 패키지는 무엇입니까?

  • 버전 11.1.0.6.0(또는 ODAC가 제공되는 최신 버전)을 선택합니다.
  • 인스턴트 클라이언트 패키지 - 기본(전체 언어 지원이 필요한 경우)
  • 인스턴트 클라이언트 패키지 - ODAC

c# 애플리케이션이 포함된 오라클 인스턴트 클라이언트 배포에 대한 스택 오버플로 관련 기사가 많이 있습니다.

편집: 업데이트된 링크 및 버전

ODP.NET은 Oracle db에 액세스하기에 가장 좋은 공급자입니다. ODP.NET은 가장 기본적인 공급자이기 때문에 ODBC와 다음과 같은 점에서 차별화됩니다.

  • 더 나은 성과
  • ODP.NET은 ODBC .NET을 통해 사용할 수 없는 고급 Oracle 기능에 대한 액세스를 제공합니다.
  • ODP.NET은 추가 데이터 액세스 브리지를 사용하지 않습니다.

ODBC도 사용할 수 있지만 위에서 언급한 것처럼 속도가 느리고 기능이 제한됩니다.

ODP 만들기.네트워크 여기 나열된 소프트웨어(오라클 클라이언트 포함)가 필요합니다. http://www.oracle.com/technology/tech/windows/odpnet/faq.html#install

이것이 도움이 되길 바랍니다!

내가 틀렸을 수도 있지만 ADO.NET은 Oracle에 대한 통합 지원을 제공합니다. 이전 버전의 경우에는...

odbc는 너무 느린 것 같아요.시스템.Data.OracleClient도 약간 느리기 때문에 Microsoft에서 더 이상 사용하지 않습니다.

당신은 데바트의 제공자를 이용할 수 있습니다, 무료 버전이 있습니다.배포가 쉽습니다.여기를 참조하십시오. http://www.devart.com/dotconnect/oracle/ 이것은 엔티티 프레임워크를 지원합니다.

Odp.net 은 속도는 빠르지만 엔티티 프레임워크를 지원하지 않으며 배포가 매우 쉽지 않습니다.

제공한 솔루션 간의 차이점을 설명할 수는 없지만, 저는 항상 Oracle의 Oracle Data Access Components를 사용했고 항상 완벽하게 작동했습니다.Visual Studio용 ODAC에서 찾을 수 있습니다.

확실한 것은 에서 Oracle이 개발한 라이브러리입니다.NET Framework는 Oracle 외부 회사가 개발한 라이브러리보다 훨씬 정확합니다.예를 들어 Oracle 데이터베이스에 액세스할 때 발생하는 예외와 관련하여 Oracle DB에 대한 추가 지식이 있으므로 Oracle 개발 팀에서 라이브러리를 개발한 경우 훨씬 유용합니다.

사용하기로 선택한 경우 극복할 필요가 없는 종속성 문제가 발생한다는 것이 나쁜 점입니다.NET 시스템.Data.Oracle Client.

이게 도움이 되길 바랍니다.안부 전해요.


편집 : ODAC 패키지에는 ODP 및 Oracle Developer Tools가 포함되어 있습니다.

ODP.NET은 Oracle DB에 액세스하기 위한 기본 제공자입니다.따라서 Oracle db에 더 잘 최적화되어야 합니다.또한 MS ODBC에서는 지원되지 않지만 ODP에서는 지원되는 REF CURSOR 유형과 같은 Oracle 기능이 있습니다.NET. ODP가 포함된 ODAC를 다운로드할 수 있습니다.NET 또한 www.aracle.com 웹사이트에서 볼 수 있습니다.

언급URL : https://stackoverflow.com/questions/1626636/connecting-c-sharp-to-oracle

반응형