Hello:
I have have problems saving ascii and unicode data that contains spanish
symbols, please look at the next py25 code using last version of cx_oracle
under Windows XP2:
# -*- coding: utf-8 -*-
import cx_Oracle as Ora
connOra = Ora.connect("user", "pass", "DB")
cursOra = connOra.cursor()
cursOra.execute("CREATE TABLE ASCTAB (txt VARCHAR2(30))")
connOra.commit()
txt = "áéíóú > ñÑ > ¿?"
print "String: ", txt
cursOra.execute("INSERT INTO ASCTAB VALUES('%s')" % txt)
connOra.commit()
cursOra.execute("SELECT * FROM ASCTAB")
for i in cursOra.fetchall():
print "DB data: ", i[0]
cursOra.execute("CREATE TABLE UNITAB (txt NVARCHAR2(30))")
connOra.commit()
uTxt = unicode('"áéíóú > ñÑ > ¿?"', 'latin-1')
print "Unicode: ", uTxt
cursOra.execute("INSERT INTO UNITAB VALUES('%s')" % uTxt)
connOra.commit()
cursOra.execute("SELECT * FROM UNITAB")
for i in cursOra.fetchall():
print i[0]
connOra.close()
The results I get after executing previous program are:
.python test.py
String: ßÚݾ· > ±Ð > +?
DB data: ????? > ?? > ??
Unicode: "áéíóú > ñÑ > ¿?"
Traceback (most recent call last):
File "test.py", line 19, in <module>
cursOra.execute("INSERT INTO UNITAB VALUES('%s')" % uTxt)
TypeError: expecting None or a string
SQL> select * from asctab;
TXT
------------------------------
????? > ?? > ??
SQL>
The source file test.py was saved as utf-8.
How can I save and retrieve spanish characters in a correct way?
Many thanks for your help.
_________________________________________________________________
MSN Amor: busca tu ½ naranja http://latam.msn.com/amor/
|