ResultRange

An input range of Row.

This is returned by the mysql.commands.query and mysql.prepared.PreparedImpl.query functions.

The rows are downloaded one-at-a-time, as you iterate the range. This allows for low memory usage, and quick access to the results as they are downloaded. This is especially ideal in case your query results in a large number of rows.

However, because of that, this ResultRange cannot offer random access or a length member. If you need random access, then just like any other range, you can simply convert this range to an array via std.array.array(). Or, you can use querySet to obtain a ResultSet instead.

Constructors

this
this(Connection con, ResultSetHeaders rsh, string[] colNames)
Undocumented in source.

Members

Functions

asAA
Variant[string] asAA()

Get the current row as an associative array by column name

close
void close()

Explicitly clean up the MySQL resources and cancel pending results

popFront
void popFront()

Make the ResultRange behave as am input range - popFront()

Properties

colNameIndicies
const(size_t[string]) colNameIndicies [@property getter]

An AA to lookup a column's index by name

colNames
const(string)[] colNames [@property getter]

Get the names of all the columns

empty
bool empty [@property getter]

Make the ResultRange behave as an input range - empty

front
inout(Row) front [@property getter]

Make the ResultRange behave as an input range - front

isValid
bool isValid [@property getter]

Check whether the range can still we used, or has been invalidated

rowCount
ulong rowCount [@property getter]

Get the number of currently retrieved.

Meta