[Python-checkins] r69235 - sandbox/trunk/dbm_sqlite/alt/dbsqlite.py

raymond.hettinger python-checkins at python.org
Tue Feb 3 03:14:51 CET 2009


Author: raymond.hettinger
Date: Tue Feb 3 03:14:51 2009
New Revision: 69235
Log:
Fix-up __len__ to handle an empty table.
Modified:
 sandbox/trunk/dbm_sqlite/alt/dbsqlite.py
Modified: sandbox/trunk/dbm_sqlite/alt/dbsqlite.py
==============================================================================
--- sandbox/trunk/dbm_sqlite/alt/dbsqlite.py	(original)
+++ sandbox/trunk/dbm_sqlite/alt/dbsqlite.py	Tue Feb 3 03:14:51 2009
@@ -37,8 +37,8 @@
 self.conn.commit()
 
 def __len__(self):
- GET_LEN = 'SELECT MAX(ROWID) FROM shelf'
- return self.conn.execute(GET_LEN).fetchone()[0]
+ GET_LEN = 'SELECT MAX(ROWID) FROM shelf' # returns None if count is zero
+ return self.conn.execute(GET_LEN).fetchone()[0] or 0
 
 def keys(self):
 return SQLhashKeysView(self)
@@ -129,6 +129,7 @@
 
 if __name__ in '__main___':
 for d in SQLhash(), SQLhash('example'):
+ list(d)
 print(list(d), "start")
 d['abc'] = 'lmno'
 print(d['abc']) 


More information about the Python-checkins mailing list

AltStyle によって変換されたページ (->オリジナル) /