MCPcopy
hub / github.com/drizzle-team/drizzle-orm / batch

Method batch

drizzle-orm/src/d1/session.ts:77–97  ·  drizzle-orm/src/d1/session.ts::SQLiteD1Session.batch
(queries: T)

Source from the content-addressed store, hash-verified

75 }
76
77 async batch<T extends BatchItem<class="st">'sqlite'>[] | readonly BatchItem<class="st">'sqlite'>[]>(queries: T) {
78 const preparedQueries: PreparedQuery[] = [];
79 const builtQueries: D1PreparedStatement[] = [];
80
81 for (const query of queries) {
82 const preparedQuery = query._prepare();
83 const builtQuery = preparedQuery.getQuery();
84 preparedQueries.push(preparedQuery);
85 if (builtQuery.params.length > 0) {
86 builtQueries.push((preparedQuery as D1PreparedQuery).stmt.bind(...builtQuery.params));
87 } else {
88 const builtQuery = preparedQuery.getQuery();
89 builtQueries.push(
90 this.client.prepare(builtQuery.sql).bind(...builtQuery.params),
91 );
92 }
93 }
94
95 const batchResults = await this.client.batch<any>(builtQueries);
96 return batchResults.map((result, i) => preparedQueries[i]!.mapResult(result, true));
97 }
98
99 override extractRawAllValueFromBatchResult(result: unknown): unknown {
100 return (result as D1Result).results;

Callers 2

migrateFunction · 0.45
transactionProxyFunction · 0.45

Calls 4

_prepareMethod · 0.65
getQueryMethod · 0.65
mapResultMethod · 0.65
prepareMethod · 0.45

Tested by

no test coverage detected