indexing
description: "DB_SELECTION for dynamic sql"
date: "$Date$"
revision: "$Revision$"
class interface
DB_DYN_SELECTION
create
make
feature
make
feature
last_parsed_query: STRING
DB_SELECTION
feature
after: BOOLEAN
container
DB_SELECTION
require DB_SELECTION
container_exists: container /= void
container: LIST [DB_RESULT]
DB_SELECTION
cursor: DB_RESULT
DB_SELECTION
immediate_execution: BOOLEAN
no
DB_EXEC_USE
is_allocatable: BOOLEAN
Current
DB_SELECTION
is_executed: BOOLEAN
PARAMETER_HDL
is_exiting: BOOLEAN
load_result
DB_SELECTION
ensure DB_SELECTION
Result implies (not is_ok or else exhausted or else (stop_condition /= void and then stop_condition.found))
is_mapped (key: STRING): BOOLEAN
key
PARAMETER_HDL
require STRING_HDL
keys_exists: key /= void
is_prepared: BOOLEAN
PARAMETER_HDL
is_tracing: BOOLEAN
DB_EXEC_USE
last_query: STRING
DB_EXPRESSION
mapped_value (key: STRING): ANY
key
PARAMETER_HDL
require STRING_HDL
key_exists: key /= void
key_mapped: is_mapped (key)
ensure STRING_HDL
result_exists: Result /= void
object: ANY
cursor_to_object
DB_SELECTION
parameter_name_exist (key: STRING): BOOLEAN
PARAMETER_HDL
require PARAMETER_HDL
not_void: key /= void
stop_condition: ACTION
execute
load_result
DB_SELECTION
trace_output: FILE
DB_EXEC_USE
feature
is_connected: BOOLEAN
DB_STATUS_USE
is_ok: BOOLEAN
DB_STATUS_USE
feature
cursor_to_object
objectcursor
DB_SELECTION
require DB_SELECTION
cursor_exists: cursor /= void
object_exists: object /= void
forth
cursorcontainer
DB_SELECTION
require else DB_SELECTION
container_exists: container /= void
ensure then DB_SELECTION
container_index_moved: container.index = old container.index + 1
cursor_updated: not after implies cursor = container.item
no_object_convert
cursor
DB_SELECTION
ensure DB_SELECTION
object = void
object_convert (reference: ANY)
objectreference
cursor
DB_SELECTION
require DB_SELECTION
reference_exists: reference /= void
ensure DB_SELECTION
object_set: object = reference
reset_cursor (c: DB_RESULT)
cursorc
DB_SELECTION
require DB_SELECTION
arguments_exists: c /= void
connected: is_connected
ensure DB_SELECTION
cursor_reset: cursor = c
set_action (action: ACTION)
stop_conditionaction
DB_SELECTION
require DB_SELECTION
action_exists: action /= void
ensure DB_SELECTION
stop_condition_set: stop_condition = action
set_container (one_container: like container)
DB_SELECTION
require DB_SELECTION
container_exists: one_container /= void
ensure DB_SELECTION
container_set: container = one_container
set_immediate
DB_EXEC_USE
ensure DB_EXEC_USE
execution_status: immediate_execution
set_query (query: STRING)
last_queryquery
DB_EXPRESSION
require DB_EXPRESSION
query_not_void: query /= void
ensure DB_EXPRESSION
last_query_changed: last_query = query
set_trace
DB_EXEC_USE
ensure DB_EXEC_USE
trace_status: is_tracing
start
cursorcontainer
DB_SELECTION
require else DB_SELECTION
container_exists: container /= void
ensure then DB_SELECTION
container_on_first: container.isfirst
cursor_updated: cursor = container.item
unset_action
stop_condition
DB_SELECTION
ensure DB_SELECTION
stop_condition_void: stop_condition = void
unset_container
container
DB_SELECTION
require DB_SELECTION
container_exists: container /= void
ensure DB_SELECTION
container_is_void: container = void
unset_immediate
PREPAREEXECUTE
DB_EXEC_USE
ensure DB_EXEC_USE
execution_status: not immediate_execution
unset_trace
DB_EXEC_USE
ensure DB_EXEC_USE
trace_status: not is_tracing
feature
bind_parameter
require
prepared_statement: is_prepared
execute
require
prepared_statement: is_prepared
ensure
prepared_statement: is_executed
parameter_count: INTEGER
ensure PARAMETER_HDL
Result > 0 implies is_prepared
prepare (s: STRING)
s
require
not_void: s /= void
meaning_full_statement: s.count > 0
is_ok: is_ok
is_allocatable: is_allocatable
ensure
prepared_statement: is_prepared
prepared_statement: not is_executed
feature
execute_query
querylast_query
DB_SELECTION
require DB_EXPRESSION
last_query_not_void: last_query /= void
load_result
container
exit_condition
DB_SELECTION
require DB_SELECTION
connected: is_connected
is_ok: is_ok
ensure DB_SELECTION
cursor_not_void: cursor /= void
exit_condition_met: is_exiting
next
DB_SELECTION
require DB_SELECTION
connected: is_connected
query (s: STRING)
s
load_result
DB_SELECTION
require DB_SELECTION
connected: is_connected
argument_exists: s /= void
argument_is_not_empty: not s.is_empty
is_ok: is_ok
is_allocatable: is_allocatable
ensure DB_SELECTION
last_query_changed: last_query = s
terminate
DB_SELECTION
require DB_SELECTION
connected: is_connected
ensure DB_SELECTION
is_allocatable: is_allocatable
wipe_out
DB_SELECTION
ensure DB_SELECTION
container_is_empty: container /= void implies container.is_empty
object_model_void: object = void
cursor_void: cursor = void
feature
clear_all
PARAMETER_HDL
set_map_name (n: ANY; key: STRING)
nkey
PARAMETER_HDL
require STRING_HDL
key_exists: key /= void
not_key_in_table: not is_mapped (key)
ensure STRING_HDL
ht.count = old ht.count + 1
unset_map_name (key: STRING)
key
PARAMETER_HDL
require STRING_HDL
key_exists: key /= void
item_exists: is_mapped (key)
ensure STRING_HDL
ht.count = old ht.count - 1
feature
set_executed (b: BOOLEAN)
PARAMETER_HDL
set_parameter (value: ANY; key: STRING)
PARAMETER_HDL
require PARAMETER_HDL
key_not_void: key /= void
has_parameters: parameter_count > 0
set_parameters_value (p: ARRAY [ANY])
PARAMETER_HDL
require PARAMETER_HDL
has_parameters: parameter_count > 0
set_prepared (b: BOOLEAN)
PARAMETER_HDL
setup_parameters
PARAMETER_HDL
invariant
ANY
reflexive_equality: standard_is_equal (Current)
reflexive_conformance: conforms_to (Current)
DB_SELECTION
last_cursor_in_container: container /= void and then not container.is_empty implies container.has (cursor)
end -- DB_DYN_SELECTION