diff --git a/core/database.py b/core/database.py index 714045e..bcddad6 100644 --- a/core/database.py +++ b/core/database.py @@ -152,6 +152,34 @@ class DatabaseManager: conn = self.get_connection() return conn.executemany(query, parameters) + def fetchall(self, query: str, parameters: tuple = ()) -> List[sqlite3.Row]: + """ + Execute query and fetch all results. + + Args: + query: SQL query string + parameters: Query parameters + + Returns: + List of row objects + """ + cursor = self.execute(query, parameters) + return cursor.fetchall() + + def fetchone(self, query: str, parameters: tuple = ()) -> Optional[sqlite3.Row]: + """ + Execute query and fetch first result. + + Args: + query: SQL query string + parameters: Query parameters + + Returns: + Single row or None + """ + cursor = self.execute(query, parameters) + return cursor.fetchone() + def commit(self) -> None: """Commit current transaction.""" if self._connection: