Home / Class/ SingleStoreInsertBuilder Class — drizzle-orm Architecture

SingleStoreInsertBuilder Class — drizzle-orm Architecture

Architecture documentation for the SingleStoreInsertBuilder class in insert.ts from the drizzle-orm codebase.

Entity Profile

Dependency Diagram

graph TD
  9442fc4c_9ca5_40db_e06f_23089dbf0a3e["SingleStoreInsertBuilder"]
  442ef410_0a6c_ba64_9e82_83d5b7e37c62["insert.ts"]
  9442fc4c_9ca5_40db_e06f_23089dbf0a3e -->|defined in| 442ef410_0a6c_ba64_9e82_83d5b7e37c62
  5114e993_8508_75c1_348d_3b8b25df48ab["constructor()"]
  9442fc4c_9ca5_40db_e06f_23089dbf0a3e -->|method| 5114e993_8508_75c1_348d_3b8b25df48ab
  eb09f733_4f02_77df_38be_03e6a75d04be["ignore()"]
  9442fc4c_9ca5_40db_e06f_23089dbf0a3e -->|method| eb09f733_4f02_77df_38be_03e6a75d04be
  bc80d645_36f5_d37f_6833_0a8ee487bf1b["values()"]
  9442fc4c_9ca5_40db_e06f_23089dbf0a3e -->|method| bc80d645_36f5_d37f_6833_0a8ee487bf1b

Relationship Graph

Source Code

drizzle-orm/src/singlestore-core/query-builders/insert.ts lines 41–82

export class SingleStoreInsertBuilder<
	TTable extends SingleStoreTable,
	TQueryResult extends SingleStoreQueryResultHKT,
	TPreparedQueryHKT extends PreparedQueryHKTBase,
> {
	static readonly [entityKind]: string = 'SingleStoreInsertBuilder';

	private shouldIgnore = false;

	constructor(
		private table: TTable,
		private session: SingleStoreSession,
		private dialect: SingleStoreDialect,
	) {}

	ignore(): this {
		this.shouldIgnore = true;
		return this;
	}

	values(value: SingleStoreInsertValue<TTable>): SingleStoreInsertBase<TTable, TQueryResult, TPreparedQueryHKT>;
	values(values: SingleStoreInsertValue<TTable>[]): SingleStoreInsertBase<TTable, TQueryResult, TPreparedQueryHKT>;
	values(
		values: SingleStoreInsertValue<TTable> | SingleStoreInsertValue<TTable>[],
	): SingleStoreInsertBase<TTable, TQueryResult, TPreparedQueryHKT> {
		values = Array.isArray(values) ? values : [values];
		if (values.length === 0) {
			throw new Error('values() must be called with at least one value');
		}
		const mappedValues = values.map((entry) => {
			const result: Record<string, Param | SQL> = {};
			const cols = this.table[Table.Symbol.Columns];
			for (const colKey of Object.keys(entry)) {
				const colValue = entry[colKey as keyof typeof entry];
				result[colKey] = is(colValue, SQL) ? colValue : new Param(colValue, cols[colKey]);
			}
			return result;
		});

		return new SingleStoreInsertBase(this.table, mappedValues, this.shouldIgnore, this.session, this.dialect);
	}
}

Domain

Frequently Asked Questions

What is the SingleStoreInsertBuilder class?
SingleStoreInsertBuilder is a class in the drizzle-orm codebase, defined in drizzle-orm/src/singlestore-core/query-builders/insert.ts.
Where is SingleStoreInsertBuilder defined?
SingleStoreInsertBuilder is defined in drizzle-orm/src/singlestore-core/query-builders/insert.ts at line 41.

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free