indexing description: "Execute a select query and provide access to the result." author: "Patrick Ruckstuhl " date: "$Date$" revision: "$Revision$" class DATABASE_SELECT_QUERY inherit DATABASE_QUERY redefine make end create make feature {NONE} -- Initialization make (a_access: like database_access) is -- Create. do Precursor (a_access) create database_selection.make end feature -- Update set_map_name (n: ANY; key: STRING) -- Store item n with key key. -- n can be Void. require key_exists: key /= Void do database_selection.set_map_name (n, key) end feature -- Command execute_query (a_query: STRING): SELECTION_RESULT is -- Execute a_query. require a_query_ok: a_query /= Void and then not a_query.is_empty local l_results: ARRAYED_LIST [DB_RESULT] do create l_results.make (128) database_selection.set_container (l_results) database_selection.query (a_query) database_access.handle_errors_and_warnings database_selection.load_result database_selection.terminate database_selection.clear_all database_selection.unset_container create Result.make (l_results) end feature {NONE} -- Implementation database_selection: DB_SELECTION -- Eiffel Store db selection. invariant database_selection_not_void: database_selection /= Void end