Home / Class/ MySqlDateTime Class — drizzle-orm Architecture

MySqlDateTime Class — drizzle-orm Architecture

Architecture documentation for the MySqlDateTime class in datetime.ts from the drizzle-orm codebase.

Entity Profile

Dependency Diagram

graph TD
  46719e63_7a73_f5f6_4650_184b4df95f02["MySqlDateTime"]
  eb2e4c8f_81c8_a37a_4d03_317a5ea489ad["datetime.ts"]
  46719e63_7a73_f5f6_4650_184b4df95f02 -->|defined in| eb2e4c8f_81c8_a37a_4d03_317a5ea489ad
  782c12fb_8fae_1d45_8f74_c86072fa3a99["constructor()"]
  46719e63_7a73_f5f6_4650_184b4df95f02 -->|method| 782c12fb_8fae_1d45_8f74_c86072fa3a99
  0846824e_cb40_3e62_c7a7_bda144b1a988["getSQLType()"]
  46719e63_7a73_f5f6_4650_184b4df95f02 -->|method| 0846824e_cb40_3e62_c7a7_bda144b1a988
  519013ff_03e3_7506_0ff8_19d5969a6948["mapToDriverValue()"]
  46719e63_7a73_f5f6_4650_184b4df95f02 -->|method| 519013ff_03e3_7506_0ff8_19d5969a6948
  fe58d398_7a44_c649_5804_c6a762b13da3["mapFromDriverValue()"]
  46719e63_7a73_f5f6_4650_184b4df95f02 -->|method| fe58d398_7a44_c649_5804_c6a762b13da3

Relationship Graph

Source Code

drizzle-orm/src/mysql-core/columns/datetime.ts lines 38–63

export class MySqlDateTime<T extends ColumnBaseConfig<'date', 'MySqlDateTime'>> extends MySqlColumn<T> {
	static override readonly [entityKind]: string = 'MySqlDateTime';

	readonly fsp: number | undefined;

	constructor(
		table: AnyMySqlTable<{ name: T['tableName'] }>,
		config: MySqlDateTimeBuilder<T>['config'],
	) {
		super(table, config);
		this.fsp = config.fsp;
	}

	getSQLType(): string {
		const precision = this.fsp === undefined ? '' : `(${this.fsp})`;
		return `datetime${precision}`;
	}

	override mapToDriverValue(value: Date): unknown {
		return value.toISOString().replace('T', ' ').replace('Z', '');
	}

	override mapFromDriverValue(value: string): Date {
		return new Date(value.replace(' ', 'T') + 'Z');
	}
}

Domain

Frequently Asked Questions

What is the MySqlDateTime class?
MySqlDateTime is a class in the drizzle-orm codebase, defined in drizzle-orm/src/mysql-core/columns/datetime.ts.
Where is MySqlDateTime defined?
MySqlDateTime is defined in drizzle-orm/src/mysql-core/columns/datetime.ts at line 38.

Analyze Your Own Codebase

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

Try Supermodel Free