SqlTuple provides access to one row of an SQL query result. It is returned by SqlCursor while iterating a SqlResultSet, and it exposes the row values through indexed access by column number or column name.
public class SqlTuple
{
public int Count { get; }
public object this[int i] { get; }
public object this[string column] { get; }
}
SqlCursor and provides access to the values of the current row.SqlResultSet.object and should be cast according to the corresponding entry in SqlResultSet.ColumnTypes.SqlResultSet.GetColumnNo() and then accesses the value by index. It throws ArgumentException if the column name is not found.long, double, string, DateTime, decimal, byte[], Sequence, or remote-SQL sequence arrays, depending on the SQL column type and transport.SqlResultSet.ColumnNames and GetColumnNo().SqlResultSet.SqlCursor.Current returns the current tuple. Each successful MoveNext() call creates a new SqlTuple representing the newly selected row.SqlTuple itself does not implement IDisposable. Keep the parent SqlCursor and SqlResultSet alive while reading tuple values. If a tuple value is itself a disposable object, such as Sequence, release that value according to its own lifecycle rules.foreach (SqlTuple row in resultSet) for normal traversal, then read values by index or by name, for example row[0] or row["price"].