Skip to content

@sqlrooms/duckdb / WasmDuckDbConnector

Class: WasmDuckDbConnector

Extends

Constructors

new WasmDuckDbConnector()

new WasmDuckDbConnector(__namedParameters): WasmDuckDbConnector

Parameters

ParameterType
__namedParameters{ dbPath: string; queryConfig: DuckDBQueryConfig; initializationQuery: string; logging: boolean; }
__namedParameters.dbPath?string
__namedParameters.queryConfig?DuckDBQueryConfig
__namedParameters.initializationQuery?string
__namedParameters.logging?boolean

Returns

WasmDuckDbConnector

Overrides

BaseDuckDbConnector.constructor

Properties

PropertyModifierTypeDefault valueInherited from
dbPathprotectedstringundefinedBaseDuckDbConnector.dbPath
initializationQueryprotectedstringundefinedBaseDuckDbConnector.initializationQuery
initializedprotectedbooleanfalseBaseDuckDbConnector.initialized
initializingprotectednull | Promise<void>nullBaseDuckDbConnector.initializing
loggingprivatebooleanundefined-
dbprivatenull | AsyncDuckDBnull-
connprivatenull | AsyncDuckDBConnectionnull-
workerprivatenull | Workernull-
queryConfig?privateDuckDBQueryConfigundefined-

Methods

initialize()

initialize(): Promise<void>

Initialize the connector

Returns

Promise<void>

Inherited from

BaseDuckDbConnector.initialize


ensureInitialized()

protected ensureInitialized(): Promise<void>

Returns

Promise<void>

Inherited from

BaseDuckDbConnector.ensureInitialized


initializeInternal()

protected initializeInternal(): Promise<void>

Returns

Promise<void>

Overrides

BaseDuckDbConnector.initializeInternal


destroy()

destroy(): Promise<void>

Destroy the connector and clean up resources

Returns

Promise<void>

Overrides

BaseDuckDbConnector.destroy


query()

query(query): Promise<Table<any>>

Execute a SQL query and return the result as an Arrow table

Parameters

ParameterTypeDescription
querystringSQL query to execute

Returns

Promise<Table<any>>

Overrides

BaseDuckDbConnector.query


loadFile()

loadFile(file, tableName, opts?): Promise<void>

Load a file into DuckDB and create a table

Parameters

ParameterTypeDescription
filestring | File-
tableNamestringName of the table to create
opts?objectOutputType<extendShape<{ schema: ZodOptional<ZodString>; select: ZodOptional<ZodArray<ZodString, "many">>; where: ZodOptional<ZodString>; view: ZodOptional<ZodBoolean>; temp: ZodOptional<ZodBoolean>; replace: ZodOptional<ZodBoolean>; }, { method: ZodEnum<["read_json", "read_ndjson", "read_parquet", "read_csv", "auto"]>; }>, ZodUnknown, "strip"> | objectOutputType<extendShape<extendShape<{ schema: ZodOptional<ZodString>; select: ZodOptional<ZodArray<ZodString, "many">>; where: ZodOptional<ZodString>; view: ZodOptional<ZodBoolean>; temp: ZodOptional<ZodBoolean>; replace: ZodOptional<ZodBoolean>; }, { options: ZodOptional<ZodUnion<[ZodArray<ZodString, "many">, ZodString, ZodRecord<ZodString, ZodUnknown>]>>; }>, { method: ZodLiteral<"st_read">; }>, ZodUnknown, "strip">Load options

Returns

Promise<void>

Overrides

BaseDuckDbConnector.loadFile


loadArrow()

loadArrow(file, tableName, opts?): Promise<void>

Load an arrow table or an arrow IPC stream into DuckDB

Parameters

ParameterTypeDescription
fileTable<any> | Uint8Array<ArrayBufferLike>-
tableNamestringName of the table to create
opts?{ schema: string; }-
opts.schema?string-

Returns

Promise<void>

Overrides

BaseDuckDbConnector.loadArrow


loadObjects()

loadObjects(file, tableName, opts?): Promise<void>

Load JavaScript objects into DuckDB

Parameters

ParameterTypeDescription
fileRecord<string, unknown>[]-
tableNamestringName of the table to create
opts?objectOutputType<{ schema: ZodOptional<ZodString>; select: ZodOptional<ZodArray<ZodString, "many">>; where: ZodOptional<ZodString>; view: ZodOptional<ZodBoolean>; temp: ZodOptional<ZodBoolean>; replace: ZodOptional<ZodBoolean>; }, ZodUnknown, "strip">Load options

Returns

Promise<void>

Overrides

BaseDuckDbConnector.loadObjects


withTempRegisteredFile()

private withTempRegisteredFile(file, action): Promise<void>

Parameters

ParameterType
filestring | File
action(fileName) => Promise<void>

Returns

Promise<void>


getDb()

getDb(): AsyncDuckDB

Returns

AsyncDuckDB


getConnection()

getConnection(): AsyncDuckDBConnection

Returns

AsyncDuckDBConnection