On Fri, 31 Dec 2004 18:53:52 -0800, Robert Brewer <[EMAIL PROTECTED]> wrote:
> Andy Dustman wrote:
> > What's the current view on the best object class to use for
> > Binary/BLOB objects? PEP-249 recommends buffer, but buffer
> > appears deprecated. MySQLdb used to strings, but currently
> > uses array. mxODBC appears to use strings. psycopg appears
> > to use buffer.
> Won't Python strings be encoded, and therefore often choke on values between
> 128 and 255? To my naive mind, unicode objects would be the preferred choice.
No. With MySQL, at least, the only meta-characters it cares about in
strings passed to it are single-quote ('), backslash (\), and NUL
(zero-byte), and all of these can be escaped with backslash, and there
is an API function to do this safely. You don't have to do this with
values you pass in; it happens automatically with MySQLdb. Getting
8-bit binary strings out of MySQL and into Python is not a problem
either.
One reason Unicode objects weren't used because, when PEP-249 was
written, they didn't exist (IIRC).
--
Computer interfaces should never be made of meat.
Using GMail? Setting Reply-to address to <> disables this annoying feature.
_______________________________________________
DB-SIG maillist - [email protected]
http://mail.python.org/mailman/listinfo/db-sig