Interpret the parameter descriptor
A parameter descriptor contains information about the parameters in a qualification descriptor.
If a qualification descriptor has multiple parameters that include one or more expressions, the virtual-table interface cannot process the values and must send the expressions to the SQL layer for processing. However, you can use parameter descriptors to create a hierarchy of qualification descriptors until each parameter that is an expression has its own qualification descriptor. The virtual-table interface processes recursively through the hierarchy of qualification and parameter descriptors.
The access method runs virtual-table interface accessor functions
to extract individual parameters from a qualification descriptor.
The following table lists the parameter descriptor accessor functions.
Accessor function | Purpose |
---|---|
mi_qual_param() | Returns the parameter descriptor for the specified parameter. |
mi_qual_param_column() | Retrieves the column number in the virtual table that is associated with the specified parameter. |
mi_qual_param_constant() | Retrieves the constant value for the specified parameter. |
mi_qual_param_constant_typeid() | Returns the data type of the constant. |
mi_qual_param_constisnull() | Determines whether the arguments to a qualification function include a NULL constant. |
mi_qual_param_expression() | Returns the qualifier descriptor for the parameter, which is an expression. |
mi_qual_param_iscolumn() | Determines whether a parameter is a column. |
mi_qual_param_isconstant() | Determines whether a parameter is a literal value. |
mi_qual_param_isexpression() | Determines whether a parameter is an expression. |
mi_qual_param_issimple() | Determines whether a parameter is either a column or literal value, or an expression. |