On Wed, Oct 18, 2017 at 08:32:48AM -0800, Israel Brewster wrote: > actual question, which is "how does the STANDARD (PEP 249 in > this case) say to handle this, or, baring that (since the > standard probably doesn't explicitly say), how do the > MAJORITY of PEP 249 compliant modules handle this?" Not what > is the *best* way to handle it, but rather what is the > normal, expected behavior for a Python DB API module when > presented with bad data? That is, how does psycopg2 behave? > pyodbc? pymssql (I think)? Etc. Or is that portion of the > behavior completely arbitrary and different for every module?
For what it is worth, psycopg2 does not give you bad data to the best of my knowledge. In fact, given PostgreSQL's quite tight checking of text data to be "good" psycopg2 hardly has a chance to give you bad data. Most times the database itself will detect the corruption and not even hand the data to psycopg2. IMHO a driver should not hand over to the client any bad data unless explicitely told to do so, which latter case does not seem to be covered by the DB-API specs, regardless of what the majority of drivers might do these days. 2 cent... Karsten -- GPG key ID E4071346 @ eu.pool.sks-keyservers.net E167 67FD A291 2BEA 73BD 4537 78B9 A9F9 E407 1346 -- https://mail.python.org/mailman/listinfo/python-list