knex_dart_bigquery

Google BigQuery driver for knex_dart using the BigQuery Jobs REST API.

Pub Version License: MIT

Installation

dependencies:
  knex_dart_bigquery: ^0.1.0

Quick Start

import 'package:knex_dart_bigquery/knex_dart_bigquery.dart';

final db = KnexBigQuery(
  projectId: 'my-gcp-project',
  token: 'ya29.oauth_token',
  defaultDataset: 'analytics',
  location: 'US',
);

final rows = await db.select(
  db.queryBuilder().table('events').where('event_type', '=', 'signup').limit(50),
);

db.close();

Platform Requirements

  • Works on Dart VM and web runtimes (HTTP-based driver).
  • Requires a valid Google OAuth bearer token with BigQuery permissions.

Dialect Capabilities

Based on knex_dart_capabilities (bigquery dialect):

Capability Support
returning No
fullOuterJoin Yes
lateralJoin Yes
onConflictMerge No
cte Yes
windowFunctions Yes
json Yes
intersectExcept Yes

Known Limitations

  • No interactive transaction API in this driver.
  • Each query is submitted as a separate BigQuery job.
  • Large result pagination is not yet surfaced by this client (single result fetch path).
  • Parameter type mapping is basic (BOOL, INT64, FLOAT64, STRING).

Libraries

knex_dart_bigquery
Google BigQuery driver for knex_dart.