Move helpers.select_generator to PDB.sql_select.
This commit is contained in:
		
							parent
							
								
									cfa5d269d1
								
							
						
					
					
						commit
						cca8837863
					
				
					 3 changed files with 17 additions and 18 deletions
				
			
		|  | @ -343,19 +343,6 @@ def seconds_to_hms(seconds): | ||||||
|     hms = ':'.join('%02d' % part for part in parts) |     hms = ':'.join('%02d' % part for part in parts) | ||||||
|     return hms |     return hms | ||||||
| 
 | 
 | ||||||
| def select_generator(sql, query, bindings=None): |  | ||||||
|     ''' |  | ||||||
|     Perform the query, and yield the results. |  | ||||||
|     ''' |  | ||||||
|     bindings = bindings or [] |  | ||||||
|     cursor = sql.cursor() |  | ||||||
|     cursor.execute(query, bindings) |  | ||||||
|     while True: |  | ||||||
|         fetch = cursor.fetchone() |  | ||||||
|         if fetch is None: |  | ||||||
|             break |  | ||||||
|         yield fetch |  | ||||||
| 
 |  | ||||||
| def sql_listify(items): | def sql_listify(items): | ||||||
|     ''' |     ''' | ||||||
|     Given a list of strings, return a string in the form of an SQL list. |     Given a list of strings, return a string in the form of an SQL list. | ||||||
|  |  | ||||||
|  | @ -448,8 +448,7 @@ class Album(ObjectBase, GroupableMixin): | ||||||
| 
 | 
 | ||||||
|     def get_photos(self): |     def get_photos(self): | ||||||
|         photos = [] |         photos = [] | ||||||
|         generator = helpers.select_generator( |         generator = self.photodb.sql_select( | ||||||
|             self.photodb.sql, |  | ||||||
|             'SELECT photoid FROM album_photo_rel WHERE albumid == ?', |             'SELECT photoid FROM album_photo_rel WHERE albumid == ?', | ||||||
|             [self.id] |             [self.id] | ||||||
|         ) |         ) | ||||||
|  | @ -874,8 +873,7 @@ class Photo(ObjectBase): | ||||||
|         ''' |         ''' | ||||||
|         Return the tags assigned to this Photo. |         Return the tags assigned to this Photo. | ||||||
|         ''' |         ''' | ||||||
|         generator = helpers.select_generator( |         generator = self.photodb.sql_select( | ||||||
|             self.photodb.sql, |  | ||||||
|             'SELECT tagid FROM photo_tag_rel WHERE photoid == ?', |             'SELECT tagid FROM photo_tag_rel WHERE photoid == ?', | ||||||
|             [self.id] |             [self.id] | ||||||
|         ) |         ) | ||||||
|  |  | ||||||
|  | @ -632,7 +632,7 @@ class PDBPhotoMixin: | ||||||
|         #cur = self.sql.cursor() |         #cur = self.sql.cursor() | ||||||
|         #cur.execute('EXPLAIN QUERY PLAN ' + query, bindings) |         #cur.execute('EXPLAIN QUERY PLAN ' + query, bindings) | ||||||
|         #print('\n'.join(str(x) for x in cur.fetchall())) |         #print('\n'.join(str(x) for x in cur.fetchall())) | ||||||
|         generator = helpers.select_generator(self.sql, query, bindings) |         generator = self.sql_select(query, bindings) | ||||||
|         photos_received = 0 |         photos_received = 0 | ||||||
|         for row in generator: |         for row in generator: | ||||||
|             photo = objects.Photo(self, row) |             photo = objects.Photo(self, row) | ||||||
|  | @ -758,6 +758,20 @@ class PDBSQLMixin: | ||||||
|         if commit: |         if commit: | ||||||
|             self.commit() |             self.commit() | ||||||
| 
 | 
 | ||||||
|  |     def sql_select(self, query, bindings=None): | ||||||
|  |         cur = self.sql.cursor() | ||||||
|  |         cur.execute(query, bindings) | ||||||
|  |         while True: | ||||||
|  |             fetch = cur.fetchone() | ||||||
|  |             if fetch is None: | ||||||
|  |                 break | ||||||
|  |             yield fetch | ||||||
|  | 
 | ||||||
|  |     def sql_select_one(self, query, bindings=None): | ||||||
|  |         cur = self.sql.cursor() | ||||||
|  |         cur.execute(query, bindings) | ||||||
|  |         return cur.fetchone() | ||||||
|  | 
 | ||||||
|     def sql_update(self, table, pairs, where_key, *, commit=False): |     def sql_update(self, table, pairs, where_key, *, commit=False): | ||||||
|         cur = self.sql.cursor() |         cur = self.sql.cursor() | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
		Loading…
	
		Reference in a new issue