저는 Python 2.7 및 Oracle instant client 10.2.0.3이 설치된 Windows 7, 64bit를 사용합니다.파이썬에서 연결시 cx_Oracle이 자동으로 충돌 함 2.7
저는 파이썬에서 Oracle 데이터베이스와의 연결을 설정하려고합니다. 이를 위해 cx_Oracle-5.1.2-10g.win32-py2.7.msi를 다운로드하여 설치합니다.
upd. 그것은 오류입니다. 나는 cx_Oracle과-5.1.2-10g.win-AMD64-py2.7.msi 의미
그럼 난 몇 가지를 선택하여 올바르게 설정이
import cx_Oracle
ad = cx_Oracle.makedsn('127.0.0.1', '1521', 'XE')
con = cx_Oracle.connect('user', 'password', ad)
같은 코드를 연결하고 그 연결을 확인하려고 데이터베이스 테이블의 행.
그리고이 순간에 흥미로운 일이 일어납니다. 나는 3 개의 다른 환경, 묘사 한 원본 3, Python 장치 및 ipython에있는 묘사 한 활동을 실행한다.
문제는 ST3과 ipython에서 코드의이 덩어리가 cx_Oracle.connect
(내가 다른 곳에서 print
문으로 확인한 것)과 함께 자동으로 충돌합니다.
하지만 파이썬 콘솔과 유휴 상태에서도 정상적으로 작동합니다. 또한 때때로 ipython에서 제대로 작동하지만 이유와 이유를 이해할 수 없습니다. ST3에서는 작동하지 않습니다.
는 ST는
메시지 [Finished in 0.4s with exit code 3221226356]
내가 cmd를에서 간단한 케이스의 CopyPaste에 첨부 파이썬과 ipython 콘솔의 동작을 설명하기 위해을 보여줍니다. 그것은 ipython에서 끝납니다.
C:\Users\Alexey>python
Python 2.7.7 (default, Jun 1 2014, 14:21:57) [MSC v.1500 64 bit (AMD64)] on win
32
Type "help", "copyright", "credits" or "license" for more information.
>>> import cx_Oracle
>>> cx_Oracle.connect()
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
cx_Oracle.DatabaseError: ORA-12560: TNS:protocol adapter error
>>> exit()
C:\Users\Alexey>ipython
Python 2.7.7 (default, Jun 1 2014, 14:21:57) [MSC v.1500 64 bit (AMD64)]
Type "copyright", "credits" or "license" for more information.
IPython 2.2.0 -- An enhanced Interactive Python.
? -> Introduction and overview of IPython's features.
%quickref -> Quick reference.
help -> Python's own help system.
object? -> Details about 'object', use 'object??' for extra details.
In [1]: import cx_Oracle
In [2]: cx_Oracle.connect()
C:\Users\Alexey>
어디에서 문제가 발생합니까? 어떻게 해결할 수 있습니까? 미리 감사드립니다.
추신. 나는 ST3과 같은
try:
cx_Oracle.connect()
except Exception as e:
print e
ipython 예외를 처리하기 위해 시도했지만 스크립트는 cx_Oracle.connect에 종료() 어떠한 메시지가 나타납니다.
cx_Oracle의 컴파일 된 부분에 버그가있는 것처럼 들리며, Python 예외를 발생시키지 않고 충돌합니다. –
나는이 문제에 대해 Google에서 아무 것도 발견하지 못했습니다. 내 컴퓨터의 잘못된 구성이이 상황에서 발생한다고 생각하지만 실제로 무엇인지 이해할 수는 없습니다. 하지만 어쩌면 당신은 글을 쓰고 있으며 이것은 버그 다. 개발자들이 여전히이 라이브러리를 지원하기를 희망한다. –
아직 유지 관리 된 것 같습니다. 몇 달 전에 5.1.3 릴리스가있었습니다. –