Oracle
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Oracle

Kết nối với Cơ sở dữ liệu Oracle thông qua Excel

Bạn đã cài đặt Oracle Client 32bit và 64bit như thế nào?

Vui lòng xem hướng dẫn này: BadImageFormatException. Điều này sẽ xảy ra khi chạy ở chế độ 64 bit với các thành phần máy khách Oracle 32 bit được cài đặt

Phiên bản ngắn:

Excel của bạn là 32bit và bạn cố gắng sử dụng Oracle 32bit. Tôi giả sử bạn khởi chạy phiên bản 64bit của "ODBC Administrator" - có thể có sự không khớp. Hoặc bạn gặp sự cố trong PATH của mình liên quan đến %ORACLE_HOME% và / hoặc %ORACLE_HOME%\bin thư mục

Phiên bản dài:

Excel của bạn là 32 bit, vì vậy nói chung, bạn đã thực hiện đúng cách tiếp cận bằng cách đặt Ứng dụng khách 32 bit vào PATH và cho ORACLE_HOME , bạn không thể kết hợp các tập hợp 32bit và 64bit trong một quá trình. Btw, khi bạn làm theo các hướng dẫn ở trên, Windows của bạn sẽ tự động quản lý điều này.

Tôi giả sử bạn đã cài đặt Oracle Instant Client. Ứng dụng khách tức thì mặc định không bao gồm bất kỳ trình điều khiển ODBC nào cũng như Nhà cung cấp dữ liệu Oracle (ODP.NET, Oracle.DataAccess.Client )

ODBC

Bạn có thể có 2 trình điều khiển ODBC, một trình điều khiển từ Oracle thường được gọi như Oracle trong OraClient12_home1 và một từ Microsoft có tên Microsoft ODBC cho Oracle (phải được cài đặt theo cài đặt Windows mặc định, tuy nhiên nó cũng yêu cầu Máy khách Oracle).

Trình điều khiển ODBC từ Oracle có sẵn cho 32bit và 64bit, trình điều khiển Microsoft chỉ thoát cho 32bit. Bạn có 2 Quản trị viên ODBC, 32bit (chạy c:\Windows\SysWOW64\odbcad32.exe ) và 64bit (chạy c:\Windows\System32\odbcad32.exe ). Ở đó, bạn sẽ thấy các trình điều khiển được cài đặt cho 32 lần phản hồi. 64 bit.

Nhà cung cấp dữ liệu Oracle

Đối với Nhà cung cấp dữ liệu, bạn cũng gặp trường hợp tương tự. Bạn có một tài khoản từ Microsoft ( Nhà cung cấp dữ liệu Microsoft .NET Framework cho Oracle , System.Data.OracleClient ) và từ Oracle ( Nhà cung cấp dữ liệu Oracle cho .NET , Oracle.DataAccess.Client , một số phiên bản). Cả hai đều có sẵn cho 32bit và 64bit.

Về nguyên tắc, không quan trọng trình điều khiển / nhà cung cấp nào bạn sử dụng để kết nối với Oracle - chỉ là kiến ​​trúc (tức là 32 so với 64 bit) phải phù hợp. Mỗi trình điều khiển / nhà cung cấp yêu cầu theo cài đặt Oracle Client. Tất cả các trình điều khiển / nhà cung cấp từ Microsoft đã không còn được dùng nữa, bạn nên ưu tiên những trình điều khiển / nhà cung cấp của Oracle (như đã nêu trong thông báo cảnh báo)

Khác

Oracle cũng cung cấp ODP.NET, Trình điều khiển được quản lý mà không yêu cầu thêm bất kỳ cài đặt Oracle Client nào và chạy trên cả 32bit và 64bit. Tuy nhiên, tôi không biết liệu bạn có thể sử dụng điều này trong Excel hay không.

Cuối cùng nhưng không kém phần quan trọng, bạn cũng có nhà cung cấp OLE DB. Một lần nữa từ Microsoft ( Nhà cung cấp Microsoft OLE DB cho Oracle ) và một từ Oracle ( Nhà cung cấp Oracle cho OLE DB ). Nhà cung cấp của Microsoft chỉ tồn tại cho 32bit và đã không được dùng nữa.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. truyền động tên bảng và cột bằng cách sử dụng các biến liên kết

  2. Điền một mảng liên kết bên trong một bảng lồng nhau

  3. Tại sao tôi gặp lỗi khi cố gắng đổi tên bảng sau FROM?

  4. Lỗi khi tải oci8.so với máy chủ Ubuntu 17.04 php 7 và apache2

  5. Khai báo một biến và đặt giá trị của nó từ một truy vấn SELECT trong Oracle