SQLiteAlterTableAddColumnConvertor Class — drizzle-orm Architecture
Architecture documentation for the SQLiteAlterTableAddColumnConvertor class in sqlgenerator.ts from the drizzle-orm codebase.
Entity Profile
Dependency Diagram
graph TD aa7c886b_ebf0_80b6_4293_6c012b8ecb77["SQLiteAlterTableAddColumnConvertor"] fe4174c7_3b9c_5b26_98a0_b2395ca21939["sqlgenerator.ts"] aa7c886b_ebf0_80b6_4293_6c012b8ecb77 -->|defined in| fe4174c7_3b9c_5b26_98a0_b2395ca21939 d73913e0_d57f_fd84_f250_48ea9c0a1932["can()"] aa7c886b_ebf0_80b6_4293_6c012b8ecb77 -->|method| d73913e0_d57f_fd84_f250_48ea9c0a1932 36fd46c4_aed8_9a97_7a31_4806a1cfac28["convert()"] aa7c886b_ebf0_80b6_4293_6c012b8ecb77 -->|method| 36fd46c4_aed8_9a97_7a31_4806a1cfac28
Relationship Graph
Source Code
drizzle-kit/src/sqlgenerator.ts lines 1864–1893
export class SQLiteAlterTableAddColumnConvertor extends Convertor {
can(statement: JsonStatement, dialect: Dialect): boolean {
return (
statement.type === 'sqlite_alter_table_add_column' && (dialect === 'sqlite' || dialect === 'turso')
);
}
convert(statement: JsonSqliteAddColumnStatement) {
const { tableName, column, referenceData } = statement;
const { name, type, notNull, primaryKey, generated } = column;
const defaultStatement = `${column.default !== undefined ? ` DEFAULT ${column.default}` : ''}`;
const notNullStatement = `${notNull ? ' NOT NULL' : ''}`;
const primaryKeyStatement = `${primaryKey ? ' PRIMARY KEY' : ''}`;
const referenceAsObject = referenceData
? SQLiteSquasher.unsquashFK(referenceData)
: undefined;
const referenceStatement = `${
referenceAsObject
? ` REFERENCES ${referenceAsObject.tableTo}(${referenceAsObject.columnsTo})`
: ''
}`;
// const autoincrementStatement = `${autoincrement ? 'AUTO_INCREMENT' : ''}`
const generatedStatement = generated
? ` GENERATED ALWAYS AS ${generated.as} ${generated.type.toUpperCase()}`
: '';
return `ALTER TABLE \`${tableName}\` ADD \`${name}\` ${type}${primaryKeyStatement}${defaultStatement}${generatedStatement}${notNullStatement}${referenceStatement};`;
}
}
Domain
Defined In
Source
Frequently Asked Questions
What is the SQLiteAlterTableAddColumnConvertor class?
SQLiteAlterTableAddColumnConvertor is a class in the drizzle-orm codebase, defined in drizzle-kit/src/sqlgenerator.ts.
Where is SQLiteAlterTableAddColumnConvertor defined?
SQLiteAlterTableAddColumnConvertor is defined in drizzle-kit/src/sqlgenerator.ts at line 1864.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free