pub struct Row<'stmt> { /* private fields */ }
Expand description
A single result row of a query.
Implementations
sourceimpl<'stmt> Row<'stmt>
impl<'stmt> Row<'stmt>
sourcepub fn get_unwrap<I: RowIndex, T: FromSql>(&self, idx: I) -> T
pub fn get_unwrap<I: RowIndex, T: FromSql>(&self, idx: I) -> T
Get the value of a particular column of the result row.
Failure
Panics if calling row.get(idx)
would return an error,
including:
- If the underlying DuckDB column type is not a valid type as a source
for
T
- If the underlying DuckDB integral value is outside the range
representable by
T
- If
idx
is outside the range of columns in the returned query
sourcepub fn get<I: RowIndex, T: FromSql>(&self, idx: I) -> Result<T>
pub fn get<I: RowIndex, T: FromSql>(&self, idx: I) -> Result<T>
Get the value of a particular column of the result row.
Failure
Returns an Error::InvalidColumnType
if the underlying DuckDB column
type is not a valid type as a source for T
.
Returns an Error::InvalidColumnIndex
if idx
is outside the valid
column range for this row.
Returns an Error::InvalidColumnName
if idx
is not a valid column
name for this row.
If the result type is i128 (which requires the i128_blob
feature to be
enabled), and the underlying DuckDB column is a blob whose size is not
16 bytes, Error::InvalidColumnType
will also be returned.
sourcepub fn get_ref<I: RowIndex>(&self, idx: I) -> Result<ValueRef<'_>>
pub fn get_ref<I: RowIndex>(&self, idx: I) -> Result<ValueRef<'_>>
Get the value of a particular column of the result row as a ValueRef
,
allowing data to be read out of a row without copying.
This ValueRef
is valid only as long as this Row, which is enforced by
it’s lifetime. This means that while this method is completely safe,
it can be somewhat difficult to use, and most callers will be better
served by get
or get_unwrap
.
Failure
Returns an Error::InvalidColumnIndex
if idx
is outside the valid
column range for this row.
Returns an Error::InvalidColumnName
if idx
is not a valid column
name for this row.
sourcepub fn get_ref_unwrap<I: RowIndex>(&self, idx: I) -> ValueRef<'_>
pub fn get_ref_unwrap<I: RowIndex>(&self, idx: I) -> ValueRef<'_>
Get the value of a particular column of the result row as a ValueRef
,
allowing data to be read out of a row without copying.
This ValueRef
is valid only as long as this Row, which is enforced by
it’s lifetime. This means that while this method is completely safe,
it can be difficult to use, and most callers will be better served by
get
or get_unwrap
.
Failure
Panics if calling row.get_ref(idx)
would return an
error, including:
- If
idx
is outside the range of columns in the returned query. - If
idx
is not a valid column name for this row.
Trait Implementations
sourceimpl<'a, A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P> TryFrom<&'a Row<'a>> for (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P) where
A: FromSql,
B: FromSql,
C: FromSql,
D: FromSql,
E: FromSql,
F: FromSql,
G: FromSql,
H: FromSql,
I: FromSql,
J: FromSql,
K: FromSql,
L: FromSql,
M: FromSql,
N: FromSql,
O: FromSql,
P: FromSql,
impl<'a, A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P> TryFrom<&'a Row<'a>> for (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P) where
A: FromSql,
B: FromSql,
C: FromSql,
D: FromSql,
E: FromSql,
F: FromSql,
G: FromSql,
H: FromSql,
I: FromSql,
J: FromSql,
K: FromSql,
L: FromSql,
M: FromSql,
N: FromSql,
O: FromSql,
P: FromSql,
sourceimpl<'a, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P> TryFrom<&'a Row<'a>> for (B, C, D, E, F, G, H, I, J, K, L, M, N, O, P) where
B: FromSql,
C: FromSql,
D: FromSql,
E: FromSql,
F: FromSql,
G: FromSql,
H: FromSql,
I: FromSql,
J: FromSql,
K: FromSql,
L: FromSql,
M: FromSql,
N: FromSql,
O: FromSql,
P: FromSql,
impl<'a, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P> TryFrom<&'a Row<'a>> for (B, C, D, E, F, G, H, I, J, K, L, M, N, O, P) where
B: FromSql,
C: FromSql,
D: FromSql,
E: FromSql,
F: FromSql,
G: FromSql,
H: FromSql,
I: FromSql,
J: FromSql,
K: FromSql,
L: FromSql,
M: FromSql,
N: FromSql,
O: FromSql,
P: FromSql,
sourceimpl<'a, K, L, M, N, O, P> TryFrom<&'a Row<'a>> for (K, L, M, N, O, P) where
K: FromSql,
L: FromSql,
M: FromSql,
N: FromSql,
O: FromSql,
P: FromSql,
impl<'a, K, L, M, N, O, P> TryFrom<&'a Row<'a>> for (K, L, M, N, O, P) where
K: FromSql,
L: FromSql,
M: FromSql,
N: FromSql,
O: FromSql,
P: FromSql,
sourceimpl<'a, L, M, N, O, P> TryFrom<&'a Row<'a>> for (L, M, N, O, P) where
L: FromSql,
M: FromSql,
N: FromSql,
O: FromSql,
P: FromSql,
impl<'a, L, M, N, O, P> TryFrom<&'a Row<'a>> for (L, M, N, O, P) where
L: FromSql,
M: FromSql,
N: FromSql,
O: FromSql,
P: FromSql,
sourceimpl<'a, M, N, O, P> TryFrom<&'a Row<'a>> for (M, N, O, P) where
M: FromSql,
N: FromSql,
O: FromSql,
P: FromSql,
impl<'a, M, N, O, P> TryFrom<&'a Row<'a>> for (M, N, O, P) where
M: FromSql,
N: FromSql,
O: FromSql,
P: FromSql,
sourceimpl<'a, N, O, P> TryFrom<&'a Row<'a>> for (N, O, P) where
N: FromSql,
O: FromSql,
P: FromSql,
impl<'a, N, O, P> TryFrom<&'a Row<'a>> for (N, O, P) where
N: FromSql,
O: FromSql,
P: FromSql,
sourceimpl<'a, C, D, E, F, G, H, I, J, K, L, M, N, O, P> TryFrom<&'a Row<'a>> for (C, D, E, F, G, H, I, J, K, L, M, N, O, P) where
C: FromSql,
D: FromSql,
E: FromSql,
F: FromSql,
G: FromSql,
H: FromSql,
I: FromSql,
J: FromSql,
K: FromSql,
L: FromSql,
M: FromSql,
N: FromSql,
O: FromSql,
P: FromSql,
impl<'a, C, D, E, F, G, H, I, J, K, L, M, N, O, P> TryFrom<&'a Row<'a>> for (C, D, E, F, G, H, I, J, K, L, M, N, O, P) where
C: FromSql,
D: FromSql,
E: FromSql,
F: FromSql,
G: FromSql,
H: FromSql,
I: FromSql,
J: FromSql,
K: FromSql,
L: FromSql,
M: FromSql,
N: FromSql,
O: FromSql,
P: FromSql,
sourceimpl<'a, D, E, F, G, H, I, J, K, L, M, N, O, P> TryFrom<&'a Row<'a>> for (D, E, F, G, H, I, J, K, L, M, N, O, P) where
D: FromSql,
E: FromSql,
F: FromSql,
G: FromSql,
H: FromSql,
I: FromSql,
J: FromSql,
K: FromSql,
L: FromSql,
M: FromSql,
N: FromSql,
O: FromSql,
P: FromSql,
impl<'a, D, E, F, G, H, I, J, K, L, M, N, O, P> TryFrom<&'a Row<'a>> for (D, E, F, G, H, I, J, K, L, M, N, O, P) where
D: FromSql,
E: FromSql,
F: FromSql,
G: FromSql,
H: FromSql,
I: FromSql,
J: FromSql,
K: FromSql,
L: FromSql,
M: FromSql,
N: FromSql,
O: FromSql,
P: FromSql,
sourceimpl<'a, E, F, G, H, I, J, K, L, M, N, O, P> TryFrom<&'a Row<'a>> for (E, F, G, H, I, J, K, L, M, N, O, P) where
E: FromSql,
F: FromSql,
G: FromSql,
H: FromSql,
I: FromSql,
J: FromSql,
K: FromSql,
L: FromSql,
M: FromSql,
N: FromSql,
O: FromSql,
P: FromSql,
impl<'a, E, F, G, H, I, J, K, L, M, N, O, P> TryFrom<&'a Row<'a>> for (E, F, G, H, I, J, K, L, M, N, O, P) where
E: FromSql,
F: FromSql,
G: FromSql,
H: FromSql,
I: FromSql,
J: FromSql,
K: FromSql,
L: FromSql,
M: FromSql,
N: FromSql,
O: FromSql,
P: FromSql,
sourceimpl<'a, F, G, H, I, J, K, L, M, N, O, P> TryFrom<&'a Row<'a>> for (F, G, H, I, J, K, L, M, N, O, P) where
F: FromSql,
G: FromSql,
H: FromSql,
I: FromSql,
J: FromSql,
K: FromSql,
L: FromSql,
M: FromSql,
N: FromSql,
O: FromSql,
P: FromSql,
impl<'a, F, G, H, I, J, K, L, M, N, O, P> TryFrom<&'a Row<'a>> for (F, G, H, I, J, K, L, M, N, O, P) where
F: FromSql,
G: FromSql,
H: FromSql,
I: FromSql,
J: FromSql,
K: FromSql,
L: FromSql,
M: FromSql,
N: FromSql,
O: FromSql,
P: FromSql,
sourceimpl<'a, G, H, I, J, K, L, M, N, O, P> TryFrom<&'a Row<'a>> for (G, H, I, J, K, L, M, N, O, P) where
G: FromSql,
H: FromSql,
I: FromSql,
J: FromSql,
K: FromSql,
L: FromSql,
M: FromSql,
N: FromSql,
O: FromSql,
P: FromSql,
impl<'a, G, H, I, J, K, L, M, N, O, P> TryFrom<&'a Row<'a>> for (G, H, I, J, K, L, M, N, O, P) where
G: FromSql,
H: FromSql,
I: FromSql,
J: FromSql,
K: FromSql,
L: FromSql,
M: FromSql,
N: FromSql,
O: FromSql,
P: FromSql,
sourceimpl<'a, H, I, J, K, L, M, N, O, P> TryFrom<&'a Row<'a>> for (H, I, J, K, L, M, N, O, P) where
H: FromSql,
I: FromSql,
J: FromSql,
K: FromSql,
L: FromSql,
M: FromSql,
N: FromSql,
O: FromSql,
P: FromSql,
impl<'a, H, I, J, K, L, M, N, O, P> TryFrom<&'a Row<'a>> for (H, I, J, K, L, M, N, O, P) where
H: FromSql,
I: FromSql,
J: FromSql,
K: FromSql,
L: FromSql,
M: FromSql,
N: FromSql,
O: FromSql,
P: FromSql,
sourceimpl<'a, I, J, K, L, M, N, O, P> TryFrom<&'a Row<'a>> for (I, J, K, L, M, N, O, P) where
I: FromSql,
J: FromSql,
K: FromSql,
L: FromSql,
M: FromSql,
N: FromSql,
O: FromSql,
P: FromSql,
impl<'a, I, J, K, L, M, N, O, P> TryFrom<&'a Row<'a>> for (I, J, K, L, M, N, O, P) where
I: FromSql,
J: FromSql,
K: FromSql,
L: FromSql,
M: FromSql,
N: FromSql,
O: FromSql,
P: FromSql,
Auto Trait Implementations
impl<'stmt> !RefUnwindSafe for Row<'stmt>
impl<'stmt> !Send for Row<'stmt>
impl<'stmt> !Sync for Row<'stmt>
impl<'stmt> Unpin for Row<'stmt>
impl<'stmt> !UnwindSafe for Row<'stmt>
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more