Queries
Queries
Methods of the Intersys::PERLBIND::Query package provide the ability to prepare a query, set parameters, execute the query, and and fetch the results. A Query object is created by the Intersys::PERLBIND::Database alloc_query() method (see Database for a detailed description). See Using Queries for information on how to use the Query methods.
Here is a complete listing of Query methods:
prepare query
$query->prepare($string, $sqlcode)
Prepares a query using the SQL string in $string.
$query->prepare_class($class_name, $query_name, $sqlcode)
Prepares a query in a class definition
set parameters
$query->set_par($idx, $val)
Assigns value $val to parameter $idx. The method can be called several times for the same parameter. The previous parameter value will be lost, and the new value can be of a different type. The set_par() method does not support by-reference parameters.
$nullable = $query->is_par_nullable($idx)
Returns 1 if parameter $idx is nullable, else 0.
$unbound = $query->is_par_unbound($idx)
Returns 1 if parameter $idx is unbound, else 0.
$num = $query->num_pars()
Returns number of parameters in query.
$size = $query->par_col_size($idx)
Returns size of parameter column.
$num = $query->par_num_dec_digits($idx)
Returns number of decimal digits in parameter.
$type = $query->par_sql_type($idx)
Returns sql type of parameter.
execute query
$query->execute($sqlcode)
Generates a result set using any parameters defined by calls to set_par().
fetch results
@data_row = $query->fetch($sqlcode)
$column_count = scalar($query->fetch($sqlcode))
When run in a list context, the method retrieves a row of data from the result set and returns it as a list. When there is no more data to be fetched, it returns an empty list.
When run in a scalar context, the method returns the number of columns in a row.
$name = $query->col_name($idx)
Returns name of column.
$length = $query->col_name_length($idx)
Returns length of column name.
$sql_type = $query->col_sql_type($idx)
Returns sql type of column.
$num_cols = $query->num_cols()
Returns number of columns in query.