Home / File/ db.ts — drizzle-orm Source File

db.ts — drizzle-orm Source File

Architecture documentation for db.ts, a typescript file in the drizzle-orm codebase. 17 imports, 1 dependents.

File typescript DrizzleORM SchemaDefinitions 17 imports 1 dependents 1 functions 1 classes

Entity Profile

Dependency Diagram

graph LR
  3199034d_4f78_9531_a1cc_a28d0976f992["db.ts"]
  489de6a4_bc18_ef99_254c_d5ab3de6393d["dialect.ts"]
  3199034d_4f78_9531_a1cc_a28d0976f992 --> 489de6a4_bc18_ef99_254c_d5ab3de6393d
  6ce41f98_a2e3_b98f_3947_7f0160ad8fd3["count.ts"]
  3199034d_4f78_9531_a1cc_a28d0976f992 --> 6ce41f98_a2e3_b98f_3947_7f0160ad8fd3
  998f799f_957d_51db_7155_e3e11e0646fb["SingleStoreCountBuilder"]
  3199034d_4f78_9531_a1cc_a28d0976f992 --> 998f799f_957d_51db_7155_e3e11e0646fb
  383e73f1_5469_30ba_8f67_e6c356af9b9f["index.ts"]
  3199034d_4f78_9531_a1cc_a28d0976f992 --> 383e73f1_5469_30ba_8f67_e6c356af9b9f
  733a81c9_e917_91cb_c629_03be71c34bb2["select.types.ts"]
  3199034d_4f78_9531_a1cc_a28d0976f992 --> 733a81c9_e917_91cb_c629_03be71c34bb2
  501e0bc7_0238_4d1d_eed5_9ccbf9977d3b["session.ts"]
  3199034d_4f78_9531_a1cc_a28d0976f992 --> 501e0bc7_0238_4d1d_eed5_9ccbf9977d3b
  7a3f1204_fb8c_5a08_f50d_27b7c490dc2c["subquery.ts"]
  3199034d_4f78_9531_a1cc_a28d0976f992 --> 7a3f1204_fb8c_5a08_f50d_27b7c490dc2c
  6ef75418_34dd_144f_22fc_b3be7afcdae3["table.ts"]
  3199034d_4f78_9531_a1cc_a28d0976f992 --> 6ef75418_34dd_144f_22fc_b3be7afcdae3
  a8237890_d356_c223_17b6_0e8000484160["promise"]
  3199034d_4f78_9531_a1cc_a28d0976f992 --> a8237890_d356_c223_17b6_0e8000484160
  5783c00b_125d_a011_46ec_a468ce9ecace["cache.ts"]
  3199034d_4f78_9531_a1cc_a28d0976f992 --> 5783c00b_125d_a011_46ec_a468ce9ecace
  9347c3af_060d_bd99_cd17_d7f17fadf7cb["entity.ts"]
  3199034d_4f78_9531_a1cc_a28d0976f992 --> 9347c3af_060d_bd99_cd17_d7f17fadf7cb
  2766a0a7_0fad_5ba4_d2e6_943461a894b0["query-builder.ts"]
  3199034d_4f78_9531_a1cc_a28d0976f992 --> 2766a0a7_0fad_5ba4_d2e6_943461a894b0
  3a0d6283_b08d_f0ff_8c5a_dd41d7ac83d0["relations.ts"]
  3199034d_4f78_9531_a1cc_a28d0976f992 --> 3a0d6283_b08d_f0ff_8c5a_dd41d7ac83d0
  14d8e7a8_cf89_3f16_87e5_bd0c924ebb66["selection-proxy.ts"]
  3199034d_4f78_9531_a1cc_a28d0976f992 --> 14d8e7a8_cf89_3f16_87e5_bd0c924ebb66
  style 3199034d_4f78_9531_a1cc_a28d0976f992 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

import type { ResultSetHeader } from 'mysql2/promise';
import type { Cache } from '~/cache/core/cache.ts';
import { entityKind } from '~/entity.ts';
import type { TypedQueryBuilder } from '~/query-builders/query-builder.ts';
import type { ExtractTablesWithRelations, RelationalSchemaConfig, TablesRelationalConfig } from '~/relations.ts';
import { SelectionProxyHandler } from '~/selection-proxy.ts';
import type { SingleStoreDriverDatabase } from '~/singlestore/driver.ts';
import { type ColumnsSelection, type SQL, sql, type SQLWrapper } from '~/sql/sql.ts';
import { WithSubquery } from '~/subquery.ts';
import type { SingleStoreDialect } from './dialect.ts';
import { SingleStoreCountBuilder } from './query-builders/count.ts';
import {
	QueryBuilder,
	SingleStoreDeleteBase,
	SingleStoreInsertBuilder,
	SingleStoreSelectBuilder,
	SingleStoreUpdateBuilder,
} from './query-builders/index.ts';
import type { SelectedFields } from './query-builders/select.types.ts';
import type {
	PreparedQueryHKTBase,
	SingleStoreQueryResultHKT,
	SingleStoreQueryResultKind,
	SingleStoreSession,
	SingleStoreTransaction,
	SingleStoreTransactionConfig,
} from './session.ts';
import type { WithBuilder } from './subquery.ts';
import type { SingleStoreTable } from './table.ts';

export class SingleStoreDatabase<
	TQueryResult extends SingleStoreQueryResultHKT,
	TPreparedQueryHKT extends PreparedQueryHKTBase,
	TFullSchema extends Record<string, unknown> = {},
	TSchema extends TablesRelationalConfig = ExtractTablesWithRelations<TFullSchema>,
> {
	static readonly [entityKind]: string = 'SingleStoreDatabase';

	declare readonly _: {
		readonly schema: TSchema | undefined;
		readonly fullSchema: TFullSchema;
		readonly tableNamesMap: Record<string, string>;
	};

	// We are waiting for SingleStore support for `json_array` function
	/**@inrernal */
	query: unknown;

	constructor(
		/** @internal */
		readonly dialect: SingleStoreDialect,
		/** @internal */
		readonly session: SingleStoreSession<any, any, any, any>,
		schema: RelationalSchemaConfig<TSchema> | undefined,
	) {
		this._ = schema
			? {
				schema: schema.schema,
				fullSchema: schema.fullSchema as TFullSchema,
				tableNamesMap: schema.tableNamesMap,
// ... (471 more lines)

Domain

Subdomains

Functions

Dependencies

Frequently Asked Questions

What does db.ts do?
db.ts is a source file in the drizzle-orm codebase, written in typescript. It belongs to the DrizzleORM domain, SchemaDefinitions subdomain.
What functions are defined in db.ts?
db.ts defines 1 function(s): withReplicas.
What does db.ts depend on?
db.ts imports 17 module(s): SingleStoreCountBuilder, cache.ts, count.ts, dialect.ts, driver.ts, entity.ts, index.ts, promise, and 9 more.
What files import db.ts?
db.ts is imported by 1 file(s): session.ts.
Where is db.ts in the architecture?
db.ts is located at drizzle-orm/src/singlestore-core/db.ts (domain: DrizzleORM, subdomain: SchemaDefinitions, directory: drizzle-orm/src/singlestore-core).

Analyze Your Own Codebase

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

Try Supermodel Free