Home / Class/ SingleStoreAlterTableAddColumnConvertor Class — drizzle-orm Architecture

SingleStoreAlterTableAddColumnConvertor Class — drizzle-orm Architecture

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

Entity Profile

Dependency Diagram

graph TD
  68fbaeaf_3ce2_d6a1_dc81_1e635fde1c82["SingleStoreAlterTableAddColumnConvertor"]
  fe4174c7_3b9c_5b26_98a0_b2395ca21939["sqlgenerator.ts"]
  68fbaeaf_3ce2_d6a1_dc81_1e635fde1c82 -->|defined in| fe4174c7_3b9c_5b26_98a0_b2395ca21939
  80ae96ae_671d_e117_3f62_9ad3d0249e8a["can()"]
  68fbaeaf_3ce2_d6a1_dc81_1e635fde1c82 -->|method| 80ae96ae_671d_e117_3f62_9ad3d0249e8a
  b4e9ceab_5dc0_708b_9f51_72b96bd4e0e0["convert()"]
  68fbaeaf_3ce2_d6a1_dc81_1e635fde1c82 -->|method| b4e9ceab_5dc0_708b_9f51_72b96bd4e0e0

Relationship Graph

Source Code

drizzle-kit/src/sqlgenerator.ts lines 1833–1862

class SingleStoreAlterTableAddColumnConvertor extends Convertor {
	can(statement: JsonStatement, dialect: Dialect): boolean {
		return statement.type === 'alter_table_add_column' && dialect === 'singlestore';
	}

	convert(statement: JsonAddColumnStatement) {
		const { tableName, column } = statement;
		const {
			name,
			type,
			notNull,
			primaryKey,
			autoincrement,
			onUpdate,
			generated,
		} = column;

		const defaultStatement = `${column.default !== undefined ? ` DEFAULT ${column.default}` : ''}`;
		const notNullStatement = `${notNull ? ' NOT NULL' : ''}`;
		const primaryKeyStatement = `${primaryKey ? ' PRIMARY KEY' : ''}`;
		const autoincrementStatement = `${autoincrement ? ' AUTO_INCREMENT' : ''}`;
		const onUpdateStatement = `${onUpdate ? ' ON UPDATE CURRENT_TIMESTAMP' : ''}`;

		const generatedStatement = generated
			? ` GENERATED ALWAYS AS (${generated?.as}) ${generated?.type.toUpperCase()}`
			: '';

		return `ALTER TABLE \`${tableName}\` ADD \`${name}\` ${type}${primaryKeyStatement}${autoincrementStatement}${defaultStatement}${notNullStatement}${onUpdateStatement}${generatedStatement};`;
	}
}

Domain

Frequently Asked Questions

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

Analyze Your Own Codebase

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

Try Supermodel Free