Home / Class/ SqliteAlterTableAlterColumnSetExpressionConvertor Class — drizzle-orm Architecture

SqliteAlterTableAlterColumnSetExpressionConvertor Class — drizzle-orm Architecture

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

Entity Profile

Dependency Diagram

graph TD
  71c6d25f_e7fb_3c3d_b4bb_84c229af331c["SqliteAlterTableAlterColumnSetExpressionConvertor"]
  fe4174c7_3b9c_5b26_98a0_b2395ca21939["sqlgenerator.ts"]
  71c6d25f_e7fb_3c3d_b4bb_84c229af331c -->|defined in| fe4174c7_3b9c_5b26_98a0_b2395ca21939
  1280340b_3256_fde1_40cb_63a107f673b1["can()"]
  71c6d25f_e7fb_3c3d_b4bb_84c229af331c -->|method| 1280340b_3256_fde1_40cb_63a107f673b1
  db03eae1_2ef1_8c36_dd7a_c2e348a42a71["convert()"]
  71c6d25f_e7fb_3c3d_b4bb_84c229af331c -->|method| db03eae1_2ef1_8c36_dd7a_c2e348a42a71

Relationship Graph

Source Code

drizzle-kit/src/sqlgenerator.ts lines 2169–2216

class SqliteAlterTableAlterColumnSetExpressionConvertor extends Convertor {
	can(statement: JsonStatement, dialect: Dialect): boolean {
		return (
			statement.type === 'alter_table_alter_column_set_generated'
			&& (dialect === 'sqlite' || dialect === 'turso')
		);
	}

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

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

		const dropColumnStatement = new SQLiteAlterTableDropColumnConvertor().convert({
			tableName,
			columnName,
			schema,
			type: 'alter_table_drop_column',
		});

		return [dropColumnStatement, addColumnStatement];
	}
}

Domain

Frequently Asked Questions

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

Analyze Your Own Codebase

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

Try Supermodel Free