Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Allow Row to get ColumnData #304

Open
wants to merge 2 commits into
base: main
Choose a base branch
from
Open

Conversation

LazyDope
Copy link

When working on data of an unknown type, it's very difficult to get a specific index without explicitly giving the type that we are going to receive. Being able to handle the ColumnData instead of needing to provide a concrete type that implements FromSql allows this to be handled more conveniently.

@ColinFinck
Copy link

I second this! Need to query a single cell, but I don't know its result type in advance.
ColumnData would have all the required information, but the stored ColumnData of a Row is currently not exposed. This PR or any similar getter for Row would fix that.

CC @miguelff @pimeys @steffengy @Weakky

@LazyDope
Copy link
Author

LazyDope commented Aug 1, 2023

An acceptable alternative would be implementing FromSql for ColumnData that returns a clone of the ColumnData, but most of the implementation was already present for this, it was just a matter of separating it into its own function.

@bittrance
Copy link
Contributor

Does the changes in #303 address this case? Granted, you will have to iterate to the column you want, but unless you have wide result sets or serious performance requirements, that might be acceptable?

@LazyDope
Copy link
Author

No, the borrow checker was not really the problem for me, it is much more straightforward for me to be able to get the data with the column name rather than iterating to the correct column, which is why I make this change in the first place.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants