2
* Drizzle Client & Protocol Library
4
* Copyright (C) 2008 Eric Day (eday@oddments.org)
7
* Use and distribution licensed under the BSD license. See
8
* the COPYING file in this directory for full text.
13
* @brief Row Declarations for Clients
16
#ifndef __DRIZZLE_ROW_CLIENT_H
17
#define __DRIZZLE_ROW_CLIENT_H
24
* @addtogroup drizzle_row_client Row Declarations for Clients
25
* @ingroup drizzle_client_interface
27
* These functions allow you to access rows in a result set. If the result is
28
* unbuffered, you can read and buffer rows one at a time. If the rows are
29
* buffered in the result, the drizzle_row_next() and related functions can be
35
* Get next row number for unbuffered results. Use the drizzle_field* functions
36
* to read individual fields after this function succeeds.
39
uint64_t drizzle_row_read(drizzle_result_st *result, drizzle_return_t *ret_ptr);
42
* Read and buffer one row. The returned row must be freed by the caller with
45
* @param[in,out] result pointer to the result structure to read from.
46
* @param[out] ret_pointer Standard drizzle return value.
47
* @return the row that was read, or NULL if there are no more rows.
50
drizzle_row_t drizzle_row_buffer(drizzle_result_st *result,
51
drizzle_return_t *ret_ptr);
54
* Free a row that was buffered with drizzle_row_buffer().
57
void drizzle_row_free(drizzle_result_st *result, drizzle_row_t row);
60
* Get an array of all field sizes for buffered rows.
63
size_t *drizzle_row_field_sizes(drizzle_result_st *result);
66
* Get next buffered row from a fully buffered result.
69
drizzle_row_t drizzle_row_next(drizzle_result_st *result);
72
* Get previous buffered row from a fully buffered result.
75
drizzle_row_t drizzle_row_prev(drizzle_result_st *result);
78
* Seek to the given buffered row in a fully buffered result.
81
void drizzle_row_seek(drizzle_result_st *result, uint64_t row);
84
* Get the given buffered row from a fully buffered result.
87
drizzle_row_t drizzle_row_index(drizzle_result_st *result, uint64_t row);
90
* Get current row number.
93
uint64_t drizzle_row_current(drizzle_result_st *result);
101
#endif /* __DRIZZLE_ROW_CLIENT_H */