>> Piotr Jagielski <piotr.jagiel...@op.pl> wrote: > Hello, > > set my data source URL to the following in my Java code: > jdbc:mysql://localhost/plwiki?useUnicode=true&characterEncoding=UTF-8
Please note you have "plwiki" here and you imported into "wiki". Assuming your .my.cnf is not making things difficult I ran a small Jython script to test: $ jython Jython 2.5.2 (Release_2_5_2:7206, Mar 2 2011, 23:12:06) [OpenJDK 64-Bit Server VM (Sun Microsystems Inc.)] on java1.6.0 Type "help", "copyright", "credits" or "license" for more information. >>> from com.ziclix.python.sql import zxJDBC >>> d, u, p, v = "jdbc:mysql://localhost/wiki", "root", None, >>> "org.gjt.mm.mysql.Driver" >>> db = zxJDBC.connect(d, u, p, v, CHARSET="utf8") >>> c=db.cursor() >>> c.execute("select cl_from, cl_to from categorylinks where cl_from=61 limit >>> 10") >>> c.fetchone() (61, array('b', [65, 110, 100, 111, 114, 97])) >>> (a,b) = c.fetchone() >>> print b array('b', [67, 122, -59, -126, 111, 110, 107, 111, 119, 105, 101, 95, 79, 114, 103, 97, 110, 105, 122, 97, 99, 106, 105, 95, 78, 97, 114, 111, 100, -61, -77, 119, 95, 90, 106, 101, 100, 110, 111, 99, 122, 111, 110, 121, 99, 104]) >>> for x in b: ... try: ... print chr(x), ... except ValueError: ... print "%02x" % x, ... C z -3b -7e o n k o w i e _ O r g a n i z a c j i _ N a r o d -3d -4d w _ Z j e d n o c z o n y c h array('b", [ ... ]) in Jython means that SQL driver returns an array of bytes. It seems to me that array of bytes contains raw UTF-8, so you need to decode it into proper Unicode that Java uses in strings. I think this behaviour is described in http://bugs.mysql.com/bug.php?id=25528 Probably you need to play with getBytes() on a result object to get what you want. //Saper _______________________________________________ Wikitech-l mailing list Wikitech-l@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/wikitech-l