Home / Class/ MySqlAlterTableAlterColumnAlterrGeneratedConvertor Class — drizzle-orm Architecture

MySqlAlterTableAlterColumnAlterrGeneratedConvertor Class — drizzle-orm Architecture

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

Entity Profile

Dependency Diagram

graph TD
  2e813adf_919f_b35d_4b10_385b8a9e53ef["MySqlAlterTableAlterColumnAlterrGeneratedConvertor"]
  fe4174c7_3b9c_5b26_98a0_b2395ca21939["sqlgenerator.ts"]
  2e813adf_919f_b35d_4b10_385b8a9e53ef -->|defined in| fe4174c7_3b9c_5b26_98a0_b2395ca21939
  8d64c8af_5d14_eb8b_aeb4_358027297d7a["can()"]
  2e813adf_919f_b35d_4b10_385b8a9e53ef -->|method| 8d64c8af_5d14_eb8b_aeb4_358027297d7a
  4b13038b_3737_6354_6efe_8bedf2fb1b9b["convert()"]
  2e813adf_919f_b35d_4b10_385b8a9e53ef -->|method| 4b13038b_3737_6354_6efe_8bedf2fb1b9b

Relationship Graph

Source Code

drizzle-kit/src/sqlgenerator.ts lines 2269–2315

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

	convert(statement: JsonAlterColumnAlterGeneratedStatement) {
		const {
			tableName,
			columnName,
			schema,
			columnNotNull: notNull,
			columnDefault,
			columnOnUpdate,
			columnAutoIncrement,
			columnPk,
			columnGenerated,
		} = statement;

		const tableNameWithSchema = schema
			? `\`${schema}\`.\`${tableName}\``
			: `\`${tableName}\``;

		const addColumnStatement = new MySqlAlterTableAddColumnConvertor().convert({
			schema,
			tableName,
			column: {
				name: columnName,
				type: statement.newDataType,
				notNull,
				default: columnDefault,
				onUpdate: columnOnUpdate,
				autoincrement: columnAutoIncrement,
				primaryKey: columnPk,
				generated: columnGenerated,
			},
			type: 'alter_table_add_column',
		});

		return [
			`ALTER TABLE ${tableNameWithSchema} drop column \`${columnName}\`;`,
			addColumnStatement,
		];
	}
}

Domain

Frequently Asked Questions

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

Analyze Your Own Codebase

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

Try Supermodel Free