Conexión a la base de datos Oracle utilizando cx_Oracle en Python
Pregunta
estoy usando Debian 5, Python 2.5 con la versión Unicode cx_Oracle instalado. Trato de conectar mediante el siguiente guión, pero su defecto
>>> connection = cx_Oracle.connect('hr/XXXXX@local_xe')
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: argument 1 must be unicode, not str
creo que debido a que el cx_Oracle instalada es una versión Unicode, la que me pide que especifique el Unicode como primer parámetro. pero, no teniendo Su cuerdas y yo no sé lo que podría suministrar otro sitio?
Solución 2
la solución fue colocar la siguiente
cx_Oracle.connect(u'hr/XXXXX@local_xe')
una u antes de la cadena. No sé por qué, pero eso resuelto el problema para mí.
Otros consejos
Usted debe tratar
cx_Oracle.connect(u'hr/XXXXX@local_xe')
Dado que usted tiene la versión Unicode de cx_Oracle, se espera que la cadena de conexión para ser un sring Unicode (argument 1 must be unicode, not str
)
Poner una enfrente de una cadena de u''
convierte en Unicode, y por lo tanto no tirar el error.