Home / Class/ PrimaryKey Class — drizzle-orm Architecture

PrimaryKey Class — drizzle-orm Architecture

Architecture documentation for the PrimaryKey class in primary-keys.ts from the drizzle-orm codebase.

Entity Profile

Dependency Diagram

graph TD
  b6e36384_0838_37a6_cf4f_a09ead0c50cf["PrimaryKey"]
  63d21212_2bf5_401e_92eb_15e737e0575b["primary-keys.ts"]
  b6e36384_0838_37a6_cf4f_a09ead0c50cf -->|defined in| 63d21212_2bf5_401e_92eb_15e737e0575b
  2225f094_2787_553a_625a_020ace13a787["constructor()"]
  b6e36384_0838_37a6_cf4f_a09ead0c50cf -->|method| 2225f094_2787_553a_625a_020ace13a787
  2e901c9d_1a6a_e204_dee2_629d40c90612["getName()"]
  b6e36384_0838_37a6_cf4f_a09ead0c50cf -->|method| 2e901c9d_1a6a_e204_dee2_629d40c90612

Relationship Graph

Source Code

drizzle-orm/src/mysql-core/primary-keys.ts lines 48–63

export class PrimaryKey {
	static readonly [entityKind]: string = 'MySqlPrimaryKey';

	readonly columns: MySqlColumn[];
	readonly name?: string;

	constructor(readonly table: MySqlTable, columns: MySqlColumn[], name?: string) {
		this.columns = columns;
		this.name = name;
	}

	getName(): string {
		return this.name
			?? `${this.table[MySqlTable.Symbol.Name]}_${this.columns.map((column) => column.name).join('_')}_pk`;
	}
}

Domain

Frequently Asked Questions

What is the PrimaryKey class?
PrimaryKey is a class in the drizzle-orm codebase, defined in drizzle-orm/src/mysql-core/primary-keys.ts.
Where is PrimaryKey defined?
PrimaryKey is defined in drizzle-orm/src/mysql-core/primary-keys.ts at line 48.

Analyze Your Own Codebase

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

Try Supermodel Free