Home / Class/ PrismaMySqlSession Class — drizzle-orm Architecture

PrismaMySqlSession Class — drizzle-orm Architecture

Architecture documentation for the PrismaMySqlSession class in session.ts from the drizzle-orm codebase.

Entity Profile

Dependency Diagram

graph TD
  12fe24d0_09b0_fb33_2535_96df4eac32c6["PrismaMySqlSession"]
  67f71f1b_0cbc_d35d_0948_f8c76a04f48b["session.ts"]
  12fe24d0_09b0_fb33_2535_96df4eac32c6 -->|defined in| 67f71f1b_0cbc_d35d_0948_f8c76a04f48b
  b7213a69_4965_a577_70f5_2d0091b8866a["constructor()"]
  12fe24d0_09b0_fb33_2535_96df4eac32c6 -->|method| b7213a69_4965_a577_70f5_2d0091b8866a
  9b6a5d03_10d8_d467_5f7d_19aebe9a1862["execute()"]
  12fe24d0_09b0_fb33_2535_96df4eac32c6 -->|method| 9b6a5d03_10d8_d467_5f7d_19aebe9a1862
  e8000f57_e9d5_d011_4018_50962cf3afd1["all()"]
  12fe24d0_09b0_fb33_2535_96df4eac32c6 -->|method| e8000f57_e9d5_d011_4018_50962cf3afd1
  a9a8e1b7_9c83_e878_2657_38c22b676dfc["prepareQuery()"]
  12fe24d0_09b0_fb33_2535_96df4eac32c6 -->|method| a9a8e1b7_9c83_e878_2657_38c22b676dfc
  ae91bb62_a304_bfeb_c4fb_6eb76c599a2e["transaction()"]
  12fe24d0_09b0_fb33_2535_96df4eac32c6 -->|method| ae91bb62_a304_bfeb_c4fb_6eb76c599a2e

Relationship Graph

Source Code

drizzle-orm/src/prisma/mysql/session.ts lines 43–84

export class PrismaMySqlSession extends MySqlSession {
	static override readonly [entityKind]: string = 'PrismaMySqlSession';

	private readonly logger: Logger;

	constructor(
		dialect: MySqlDialect,
		private readonly prisma: PrismaClient,
		private readonly options: PrismaMySqlSessionOptions,
	) {
		super(dialect);
		this.logger = options.logger ?? new NoopLogger();
	}

	override execute<T>(query: SQL): Promise<T> {
		return this.prepareQuery<MySqlPreparedQueryConfig & { execute: T }>(this.dialect.sqlToQuery(query)).execute();
	}

	override all<T = unknown>(_query: SQL): Promise<T[]> {
		throw new Error('Method not implemented.');
	}

	override prepareQuery<T extends MySqlPreparedQueryConfig = MySqlPreparedQueryConfig>(
		query: Query,
	): MySqlPreparedQuery<T> {
		return new PrismaMySqlPreparedQuery(this.prisma, query, this.logger);
	}

	override transaction<T>(
		_transaction: (
			tx: MySqlTransaction<
				PrismaMySqlQueryResultHKT,
				PrismaMySqlPreparedQueryHKT,
				Record<string, never>,
				Record<string, never>
			>,
		) => Promise<T>,
		_config?: MySqlTransactionConfig,
	): Promise<T> {
		throw new Error('Method not implemented.');
	}
}

Domain

Frequently Asked Questions

What is the PrismaMySqlSession class?
PrismaMySqlSession is a class in the drizzle-orm codebase, defined in drizzle-orm/src/prisma/mysql/session.ts.
Where is PrismaMySqlSession defined?
PrismaMySqlSession is defined in drizzle-orm/src/prisma/mysql/session.ts at line 43.

Analyze Your Own Codebase

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

Try Supermodel Free