convert() — drizzle-orm Function Reference
Architecture documentation for the convert() function in sqlgenerator.ts from the drizzle-orm codebase.
Entity Profile
Dependency Diagram
graph TD 6b7041f7_5104_2b55_7314_0bd494d2c545["convert()"] f46a3695_7524_9fcb_de7c_cba5c96f4c7f["PgAlterTableAddColumnConvertor"] 6b7041f7_5104_2b55_7314_0bd494d2c545 -->|defined in| f46a3695_7524_9fcb_de7c_cba5c96f4c7f b0591d99_981e_0c05_5ac1_486f87aa1678["parseType()"] 6b7041f7_5104_2b55_7314_0bd494d2c545 -->|calls| b0591d99_981e_0c05_5ac1_486f87aa1678 style 6b7041f7_5104_2b55_7314_0bd494d2c545 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
drizzle-kit/src/sqlgenerator.ts lines 1744–1799
convert(statement: JsonAddColumnStatement) {
const { tableName, column, schema } = statement;
const { name, type, notNull, generated, primaryKey, identity } = column;
const primaryKeyStatement = primaryKey ? ' PRIMARY KEY' : '';
const tableNameWithSchema = schema
? `"${schema}"."${tableName}"`
: `"${tableName}"`;
const defaultStatement = `${column.default !== undefined ? ` DEFAULT ${column.default}` : ''}`;
const schemaPrefix = column.typeSchema && column.typeSchema !== 'public'
? `"${column.typeSchema}".`
: '';
const fixedType = parseType(schemaPrefix, column.type);
const notNullStatement = `${notNull ? ' NOT NULL' : ''}`;
const unsquashedIdentity = identity
? PgSquasher.unsquashIdentity(identity)
: undefined;
const identityWithSchema = schema
? `"${schema}"."${unsquashedIdentity?.name}"`
: `"${unsquashedIdentity?.name}"`;
const identityStatement = unsquashedIdentity
? ` GENERATED ${
unsquashedIdentity.type === 'always' ? 'ALWAYS' : 'BY DEFAULT'
} AS IDENTITY (sequence name ${identityWithSchema}${
unsquashedIdentity.increment
? ` INCREMENT BY ${unsquashedIdentity.increment}`
: ''
}${
unsquashedIdentity.minValue
? ` MINVALUE ${unsquashedIdentity.minValue}`
: ''
}${
unsquashedIdentity.maxValue
? ` MAXVALUE ${unsquashedIdentity.maxValue}`
: ''
}${
unsquashedIdentity.startWith
? ` START WITH ${unsquashedIdentity.startWith}`
: ''
}${unsquashedIdentity.cache ? ` CACHE ${unsquashedIdentity.cache}` : ''}${
unsquashedIdentity.cycle ? ` CYCLE` : ''
})`
: '';
const generatedStatement = generated ? ` GENERATED ALWAYS AS (${generated?.as}) STORED` : '';
return `ALTER TABLE ${tableNameWithSchema} ADD COLUMN "${name}" ${fixedType}${primaryKeyStatement}${defaultStatement}${generatedStatement}${notNullStatement}${identityStatement};`;
}
Domain
Subdomains
Defined In
Calls
Source
Frequently Asked Questions
What does convert() do?
convert() is a function in the drizzle-orm codebase, defined in drizzle-kit/src/sqlgenerator.ts.
Where is convert() defined?
convert() is defined in drizzle-kit/src/sqlgenerator.ts at line 1744.
What does convert() call?
convert() calls 1 function(s): parseType.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free