Oracle
 sql >> Teknologi Basis Data >  >> RDS >> Oracle

Oracle.Dataaccess ada di GAC. Dapatkah saya mengontrol versi yang saya gunakan?

Dimungkinkan untuk memaksa aplikasi Anda untuk selalu menggunakan versi ODP dan ODAC yang Anda inginkan.

  1. Paksa versi ODP:gunakan trik assemblyBinding yang diposting oleh Robert, untuk memaksa menggunakan versi Oracle.DataAccess Anda alih-alih versi GAC. Mis.:

    <configuration>
      <runtime>
        <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
          <dependentAssembly>
            <assemblyIdentity name="Oracle.DataAccess"  culture="neutral" publicKeyToken="89b483f429c47342"/>
            <codeBase version="4.112.3.0" href="FILE://Oracle.DataAccess.dll"/>
          </dependentAssembly>
        </assemblyBinding>
      </runtime>
    </configuration>
    
  2. Force ODAC version:ODP DLL bergantung pada sekumpulan komponen Oracle bersama (klien instan, OCI yang tidak dikelola, dll). Salah satu cara untuk mendapatkannya adalah melalui paket ODAC. Anda dapat menentukan (berdasarkan per aplikasi), paket ODAC mana yang ingin Anda gunakan. Secara tradisional ini dilakukan melalui variabel PATH env, tetapi sekarang dapat didefinisikan melalui config:

    <configuration>
      <configSections>
        <section name="oracle.dataaccess.client" type="System.Data.Common.DbProviderConfigurationHandler, System.Data, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
      </configSections>
    
      <oracle.dataaccess.client>
        <settings>
          <add name="DllPath" value="C:\somefolder\ODAC_11.2.0.3.0_32bit\bin" />
        </settings>
      </oracle.dataaccess.client>
    </configuration>
    
  3. Sebagai tindakan pencegahan ekstra, Anda selalu dapat menghapus DLL kebijakan penerbit GAC, untuk memastikan tidak akan pernah terjadi hal yang aneh.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Tambahkan data yang hilang dari bulan atau tahun sebelumnya secara kumulatif

  2. Bagaimana saya bisa mendapatkan id objek baru yang dihasilkan oleh urutan DB?

  3. Format TANGGAL default Oracle

  4. Koneksi tidak dapat diasosiasikan kembali karena objek anak masih terbuka

  5. memuat data XLS besar ke Oracle menggunakan python