db_qd_internal_parse_one_query_from_xml_node (private)

 db_qd_internal_parse_one_query_from_xml_node one_query_node \
    [ default_rdbms ] [ file_path ]

Defined in packages/acs-bootstrap-installer/tcl/40-db-query-dispatcher-procs.tcl

Parse one query from an XML node

Parameters:
one_query_node (required)
default_rdbms (optional)
file_path (optional)

Partial Call Graph (max 5 caller/called nodes):
%3 db_qd_internal_parse_one_query db_qd_internal_parse_one_query (private) db_qd_internal_parse_one_query_from_xml_node db_qd_internal_parse_one_query_from_xml_node db_qd_internal_parse_one_query->db_qd_internal_parse_one_query_from_xml_node db_fullquery_create db_fullquery_create (private) db_qd_internal_parse_one_query_from_xml_node->db_fullquery_create db_rdbms_parse_from_xml_node db_rdbms_parse_from_xml_node (private) db_qd_internal_parse_one_query_from_xml_node->db_rdbms_parse_from_xml_node xml_node_get_attribute xml_node_get_attribute (public) db_qd_internal_parse_one_query_from_xml_node->xml_node_get_attribute xml_node_get_children_by_name xml_node_get_children_by_name (public) db_qd_internal_parse_one_query_from_xml_node->xml_node_get_children_by_name xml_node_get_content xml_node_get_content (public) db_qd_internal_parse_one_query_from_xml_node->xml_node_get_content

Testcases:
No testcase defined.
Source code:
    # db_qd_log QDDebug "parsing one query node in XML with name -[xml_node_get_name $one_query_node]-"

    # Check that this is a fullquery
    if {[xml_node_get_name $one_query_node] ne "fullquery"} {
        return ""
    }

    set queryname [xml_node_get_attribute $one_query_node name]

    # Get the text of the query
    set querytext [xml_node_get_content [xml_node_get_first_child_by_name $one_query_node querytext]]

    # Get the RDBMS
    set rdbms_nodes [xml_node_get_children_by_name $one_query_node rdbms]

    # If we have no RDBMS specified, use the default
    if {[llength $rdbms_nodes] == 0} {
        # db_qd_log QDDebug "Wow, Nelly, no RDBMS for this query, using default rdbms $default_rdbms"
        set rdbms $default_rdbms
    } else {
        set rdbms_node [lindex $rdbms_nodes 0]
        set rdbms [db_rdbms_parse_from_xml_node $rdbms_node]
    }

    return [db_fullquery_create $queryname $querytext [list"" $rdbms $file_path]
XQL Not present:
Generic, PostgreSQL, Oracle
[ hide source ] | [ make this the default ]
Show another procedure: