Skip to main content

QueryDataParams

Struct QueryDataParams 

Source
pub struct QueryDataParams {
    pub data: String,
    pub sql: String,
    pub format: Option<String>,
    pub table_name: Option<String>,
    pub schema: Option<Value>,
}
Expand description

Schema override shape shared by query_data, query_file, load_data, and load_file. Documented here once so all four tools can reference it without duplicating the prose in every field doc.

Pass a JSON object mapping column name → Hyper type string, for example:

{ "year": "INT", "population": "BIGINT", "entity": "TEXT" }

Override semantics (applied inside ingest):

  • Keys are matched to columns by name (case-sensitive). Column ordering in the JSON object does not need to match the file; the inferred order from the file is preserved.
  • Columns not listed in the override keep their inferred type — you only need to specify the columns you want to correct.
  • Types are the Hyper SQL type spellings: INT, BIGINT, NUMERIC(38,0), DOUBLE PRECISION, TEXT, BOOL, DATE, TIMESTAMP.
  • If you get a SchemaMismatch with suggestion to widen an integer column, the typical fix is { "col": "BIGINT" } or { "col": "NUMERIC(38,0)" }.

Before ingesting an unfamiliar file, prefer calling inspect_file first — it returns the inferred schema plus per-column min / max / null_count so you can build a minimal, correct override in one shot.

Parameters for the query_data one-shot tool.

Fields§

§data: String

JSON array of objects or CSV text.

§sql: String

SQL query to run against the data. Reference the table by table_name (default data).

§format: Option<String>

Data format: "json" or "csv". Auto-detected from the first byte when omitted ([/{ → JSON, otherwise CSV).

§table_name: Option<String>

Table name exposed to the SQL query (default: data).

§schema: Option<Value>

Partial schema override keyed by column name: {"col": "BIGINT", ...}. Only the listed columns are overridden; the rest keep their inferred type. See the struct-level docs on QueryDataParams and the inspect_file tool for type choices and diagnostics.

Trait Implementations§

Source§

impl Debug for QueryDataParams

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl<'de> Deserialize<'de> for QueryDataParams

Source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
Source§

impl JsonSchema for QueryDataParams

Source§

fn schema_name() -> Cow<'static, str>

The name of the generated JSON Schema. Read more
Source§

fn schema_id() -> Cow<'static, str>

Returns a string that uniquely identifies the schema produced by this type. Read more
Source§

fn json_schema(generator: &mut SchemaGenerator) -> Schema

Generates a JSON Schema for this type. Read more
Source§

fn inline_schema() -> bool

Whether JSON Schemas generated for this type should be included directly in parent schemas, rather than being re-used where possible using the $ref keyword. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Allocation for T
where T: RefUnwindSafe + Send + Sync,

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,

Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> IntoRequest<T> for T

Source§

fn into_request(self) -> Request<T>

Wrap the input message T in a tonic::Request
Source§

impl<L> LayerExt<L> for L

Source§

fn named_layer<S>(&self, service: S) -> Layered<<L as Layer<S>>::Service, S>
where L: Layer<S>,

Applies the layer to a service and wraps it in Layered.
Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more