comparison MySQLdb/cursors.py @ 66:5a7c30cd9de2 MySQLdb

By exposing connection on result, decoders can be simplified: Only the field object is needed. Turned on leak testing and found a leak writing BLOBs. removed one of the old stubs in Cursor.
author adustman
date Sun, 29 Mar 2009 16:26:30 +0000
parents 7a60c4574baf
children 98d968f5af11
comparison
equal deleted inserted replaced
65:7a60c4574baf 66:5a7c30cd9de2
118 return True 118 return True
119 119
120 def _lookup_decoder(self, field): 120 def _lookup_decoder(self, field):
121 from MySQLdb.converters import filter_NULL 121 from MySQLdb.converters import filter_NULL
122 for plugin in self._decoders: 122 for plugin in self._decoders:
123 f = plugin(self, field) 123 f = plugin(field)
124 if f: 124 if f:
125 return filter_NULL(f) 125 return filter_NULL(f)
126 return None # this should never happen 126 return None # this should never happen
127 127
128 def _do_get_result(self): 128 def _do_get_result(self):
313 self._executed = query 313 self._executed = query
314 connection.query(query) 314 connection.query(query)
315 self._do_get_result() 315 self._do_get_result()
316 return self.rowcount 316 return self.rowcount
317 317
318 def _query(self, query):
319 """Hook for _do_query."""
320 return self._do_query(query)
321
322 def _fetch_row(self, size=1): 318 def _fetch_row(self, size=1):
323 """Low-level fetch_row wrapper.""" 319 """Low-level fetch_row wrapper."""
324 if not self._result: 320 if not self._result:
325 return () 321 return ()
326 # unfortunately it is necessary to wrap these generators up as tuples 322 # unfortunately it is necessary to wrap these generators up as tuples