template::query::iterate (public, deprecated)

 template::query::iterate statement_name sql body

Defined in packages/acs-templating/tcl/deprecated-procs.tcl

Deprecated. Invoking this procedure generates a warning.

Parameters:
statement_name (required)
Standard db_api statement name used to hook into query dispatcher
sql (required)
Query to use when processing this command
body (required)
Code body to be execute for each result row of the returned query
See Also:

Partial Call Graph (max 5 caller/called nodes):
ad_log_deprecated ad_log_deprecated (public) db_exec db_exec (public) db_with_handle db_with_handle (public) template::query::iterate template::query::iterate template::query::iterate->ad_log_deprecated template::query::iterate->db_exec template::query::iterate->db_with_handle

Testcases:
No testcase defined.
Source code:
ad_log_deprecated proc template::query::iterate

    db_with_handle db {
        set result [db_exec select $db $statement_name $sql 2]

        set rowcount 0

        while { [ns_db getrow $db $result] } {

            upvar __query_iterate_row row

            set row(rownum) [incr rowcount]

            set size [ns_set size $result]

            for { set i 0 } { $i < $size } { incr i } {

                set column [ns_set key $result $i]
                set row($column) [ns_set value $result $i]
            }

            # Execute custom code for each row
            uplevel "upvar 0 __query_iterate_row row; $body"
        }
    }
XQL Not present:
Generic, PostgreSQL, Oracle
[ hide source ] | [ make this the default ]
Show another procedure: