2016-09-19 19 views
8

Tôi đang sử dụng phiên bản kỷ niệm 64 bit Windows 10 Pro sử dụng Python 3.5.2 (Anaconda 4.1.1). Tôi tải xuống Ứng dụng khách Trực tiếp Oracle 12c mới nhất instantclient-basic-windows.x64-12.1.0.2.0.zipinstantclient-sdk-windows.x64-12.1.0.2.0.zip thành C:\instantclient và đặt C:\instantclient trên PATH của tôi. Sau đó, tôi tải xuống trình cài đặt cx_Oracle-5.2.1-12c.win-amd64-py3.5.exedirectly from PyPI.Nhận biết cài đặt cx_Oracle trong PyDev

Bây giờ tôi có thể bắt đầu lời nhắc Anaconda python và nhập import cx_Oracle và thành công.

>>> import cx_Oracle 
>>> 

Bởi khi tôi đi vào cài đặt PyDev tôi trên Eclipse Neon (4.6), dòng import cx_Oracle trong tập tin nguồn của tôi vẫn cho thấy một lỗi như một nhập khẩu chưa được giải quyết.

  • tôi đã đi vào Windows> Preferences> PyDev> Người phiên dịch> Python Interpreter và loại bỏ các thông dịch Anaconda (C:\bin\anaconda3\python.exe) và thêm nó trở lại. Tôi khởi động lại Eclipse, nhưng không có may mắn.
  • Tôi đã phát hành Dự án > Làm sạch trên tất cả các dự án của tôi và khởi động lại Eclipse. Nó vẫn hiển thị import cx_Oracle dưới dạng nhập chưa được giải quyết.

Làm cách nào để nhận được PyDev để xem cài đặt gói cx_Oracle của tôi?

Lưu ý rằng có rất nhiều câu trả lời được cho là không phù hợp với tôi; Tôi đã thử tất cả các đề xuất, như đã nêu ở trên.

+0

bạn có thể làm 'sys nhập khẩu; in (sys.executable) 'trong cả hai bàn điều khiển (anaconda và nhật thực) để chắc chắn rằng thiết lập của bạn có hiệu lực? –

+0

Cả hai đều nói 'C: \ bin \ anaconda3 \ python.exe'. (Tôi không biết PyDev có một bàn điều khiển tương tác --- rất gọn gàng. Cảm ơn lời khuyên.) –

+0

Tôi cũng không biết, nhưng tôi đoán là đã tồn tại :) Vâng, kỳ lạ. Sau khi được nhập, bạn có thể 'in (cx_Oracle .__ file __)' để xem vị trí của nó không? –

Trả lời

4

Bạn có thể thử này (sau khi các bước mà bạn đã báo cáo trong câu hỏi của bạn)

  1. Kiểm tra xem quá trình cài đặt trong PyDev là ok (ngoài cho thấy một dấu hiệu lỗi cho import cx_Oracle)

    import cx_Oracle 
    
    conn = cx_Oracle.connect('hr/[email protected]') 
    cur = conn.cursor() 
    cur.execute('select 13 from dual') 
    for r in cur.fetchall(): 
        print(r) 
    

    Nếu công trình này, và in (13,) quá trình cài đặt là đúng. Có khả năng một số phần hoàn thành cũng có thể hoạt động. Ngoài ra, Shift + Nhấp vào cx_Oracle phải báo cáo The definition of ... was found at ....

  2. Đến Windows> Preferences> PyDev> Người phiên dịch> Python Interpreter và trên tab Buộc builtins thêm cx_Oracle

    Sau khi xây dựng lại dự án, đánh dấu lỗi về việc nhập khẩu sẽ biến mất. (Trong chương trình thử nghiệm nhỏ, tôi chỉ thực hiện một chỉnh sửa tầm thường và được lưu lại.)

Đối với hồ sơ:

Eclipse Version: 4.6.0 (Neon) 
PyDev Version: 5.2.0 
Python: 3.5.2 (from a virtualenv) 
+0

Trên 'conn = cx_Oracle.connect ('hr/hr @ pdborcl')' Tôi nhận được: 'cx_Oracle.DatabaseError: ORA-12154: TNS: không thể giải quyết kết nối mã định danh được chỉ định ' –

+0

@GarretWilson: Bạn sẽ cần phải thay thế chuỗi kết nối bằng một thứ gì đó hoạt động trên hệ thống của bạn. Cú pháp giống như chuỗi kết nối cho SQL * Plus. Định dạng / @

+0

Nhưng tôi không cần hoặc muốn kết nối với cơ sở dữ liệu trên nền tảng này. Tôi chỉ muốn các liên kết hiển thị mà không có lỗi và có thể nhấp vào chúng để xem nguồn. –

Các vấn đề liên quan