/*
* call-seq:
* conn.select_values(query, *bind_values)
*
* Equivalent to conn.query(query, *bind_values).flatten
*/
static VALUE
pgconn_select_values(argc, argv, self)
int argc;
VALUE *argv;
VALUE self;
{
VALUE pg_result = pgconn_exec(argc, argv, self);
PGresult * result = get_pgresult(pg_result);
int ntuples = PQntuples(result);
int nfields = PQnfields(result);
VALUE values = rb_ary_new2(ntuples * nfields);
int row_num, field_num;
for (row_num = 0; row_num < ntuples; row_num++) {
for (field_num = 0; field_num < nfields; field_num++) {
rb_ary_push(values, fetch_pgresult(result, row_num, field_num));
}
}
pgresult_clear(pg_result);
return values;
}