diff --git a/packages/plugin-obsessiondb/src/query/remote-executor.ts b/packages/plugin-obsessiondb/src/query/remote-executor.ts index fbf4021..50c9ac5 100644 --- a/packages/plugin-obsessiondb/src/query/remote-executor.ts +++ b/packages/plugin-obsessiondb/src/query/remote-executor.ts @@ -33,7 +33,12 @@ export function createRemoteExecutor(deps: { async query(sql: string): Promise { const res = await client.workbench.query.execute({ serviceId, query: sql }) throwIfError(res) - return res.data as T[] + const columns = res.meta.map((c) => c.name) + return res.data.map((row) => + Array.isArray(row) + ? (Object.fromEntries(columns.map((name, i) => [name, row[i]])) as T) + : (row as T), + ) }, async insert>(params: { table: string; values: T[] }) {