From: <pj...@us...> - 2009-07-21 02:48:54
|
Revision: 6554 http://jython.svn.sourceforge.net/jython/?rev=6554&view=rev Author: pjenvey Date: 2009-07-21 02:48:53 +0000 (Tue, 21 Jul 2009) Log Message: ----------- accept unicode statements and return unicode for cursor description's name Modified Paths: -------------- trunk/jython/src/com/ziclix/python/sql/Fetch.java trunk/jython/src/com/ziclix/python/sql/PyConnection.java trunk/jython/src/com/ziclix/python/sql/PyCursor.java Modified: trunk/jython/src/com/ziclix/python/sql/Fetch.java =================================================================== --- trunk/jython/src/com/ziclix/python/sql/Fetch.java 2009-07-21 01:00:16 UTC (rev 6553) +++ trunk/jython/src/com/ziclix/python/sql/Fetch.java 2009-07-21 02:48:53 UTC (rev 6554) @@ -259,7 +259,7 @@ for (int i = 1; i <= meta.getColumnCount(); i++) { PyObject[] a = new PyObject[7]; - a[0] = Py.newString(meta.getColumnLabel(i)); + a[0] = Py.newUnicode(meta.getColumnLabel(i)); a[1] = Py.newInteger(meta.getColumnType(i)); a[2] = Py.newInteger(meta.getColumnDisplaySize(i)); a[3] = Py.None; Modified: trunk/jython/src/com/ziclix/python/sql/PyConnection.java =================================================================== --- trunk/jython/src/com/ziclix/python/sql/PyConnection.java 2009-07-21 01:00:16 UTC (rev 6553) +++ trunk/jython/src/com/ziclix/python/sql/PyConnection.java 2009-07-21 02:48:53 UTC (rev 6554) @@ -14,6 +14,7 @@ import java.util.HashSet; import java.util.Iterator; import java.util.Set; + import org.python.core.ClassDictInit; import org.python.core.Py; import org.python.core.PyBuiltinMethodSet; @@ -22,6 +23,8 @@ import org.python.core.PyList; import org.python.core.PyObject; import org.python.core.PyString; +import org.python.core.PyUnicode; + import com.ziclix.python.sql.util.PyArgParser; /** @@ -339,7 +342,6 @@ * @return the native form of this statement */ public PyObject nativesql(PyObject nativeSQL) { - if (closed) { throw zxJDBC.makeException(zxJDBC.ProgrammingError, "connection is closed"); } @@ -349,6 +351,9 @@ } try { + if (nativeSQL instanceof PyUnicode) { + return Py.newUnicode(this.connection.nativeSQL(nativeSQL.toString())); + } return Py.newString(this.connection.nativeSQL(nativeSQL.__str__().toString())); } catch (SQLException e) { throw zxJDBC.makeException(e); Modified: trunk/jython/src/com/ziclix/python/sql/PyCursor.java =================================================================== --- trunk/jython/src/com/ziclix/python/sql/PyCursor.java 2009-07-21 01:00:16 UTC (rev 6553) +++ trunk/jython/src/com/ziclix/python/sql/PyCursor.java 2009-07-21 02:48:53 UTC (rev 6554) @@ -23,6 +23,7 @@ import org.python.core.PyObject; import org.python.core.PyString; import org.python.core.PyTuple; +import org.python.core.PyUnicode; import com.ziclix.python.sql.util.PyArgParser; @@ -382,7 +383,8 @@ stmt = (PyStatement)sql; } else { Statement sqlStatement = null; - String sqlString = sql.__str__().toString(); + String sqlString = + sql instanceof PyUnicode ? sql.toString() : sql.__str__().toString(); if (sqlString.trim().length() == 0) { return null; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |