Home / Class/ MySqlAlterTableAlterCompositePrimaryKeyConvertor Class — drizzle-orm Architecture

MySqlAlterTableAlterCompositePrimaryKeyConvertor Class — drizzle-orm Architecture

Architecture documentation for the MySqlAlterTableAlterCompositePrimaryKeyConvertor class in sqlgenerator.ts from the drizzle-orm codebase.

Entity Profile

Dependency Diagram

graph TD
  935f799d_3647_f7de_73ef_41f16775b5a6["MySqlAlterTableAlterCompositePrimaryKeyConvertor"]
  fe4174c7_3b9c_5b26_98a0_b2395ca21939["sqlgenerator.ts"]
  935f799d_3647_f7de_73ef_41f16775b5a6 -->|defined in| fe4174c7_3b9c_5b26_98a0_b2395ca21939
  b9f35fad_b5b1_998c_ea19_8f1f18bcdf7b["can()"]
  935f799d_3647_f7de_73ef_41f16775b5a6 -->|method| b9f35fad_b5b1_998c_ea19_8f1f18bcdf7b
  32b327bf_29cb_8d4a_91ec_3d1060dcc004["convert()"]
  935f799d_3647_f7de_73ef_41f16775b5a6 -->|method| 32b327bf_29cb_8d4a_91ec_3d1060dcc004

Relationship Graph

Source Code

drizzle-kit/src/sqlgenerator.ts lines 3149–3161

class MySqlAlterTableAlterCompositePrimaryKeyConvertor extends Convertor {
	can(statement: JsonStatement, dialect: Dialect): boolean {
		return statement.type === 'alter_composite_pk' && dialect === 'mysql';
	}

	convert(statement: JsonAlterCompositePK) {
		const { name, columns } = MySqlSquasher.unsquashPK(statement.old);
		const { name: newName, columns: newColumns } = MySqlSquasher.unsquashPK(
			statement.new,
		);
		return `ALTER TABLE \`${statement.tableName}\` DROP PRIMARY KEY, ADD PRIMARY KEY(\`${newColumns.join('`,`')}\`);`;
	}
}

Domain

Frequently Asked Questions

What is the MySqlAlterTableAlterCompositePrimaryKeyConvertor class?
MySqlAlterTableAlterCompositePrimaryKeyConvertor is a class in the drizzle-orm codebase, defined in drizzle-kit/src/sqlgenerator.ts.
Where is MySqlAlterTableAlterCompositePrimaryKeyConvertor defined?
MySqlAlterTableAlterCompositePrimaryKeyConvertor is defined in drizzle-kit/src/sqlgenerator.ts at line 3149.

Analyze Your Own Codebase

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

Try Supermodel Free