drizzle-team/drizzle-orm · error · Error
column with type ${col.columnType} is not supported for now.
Error message
column with type ${col.columnType} is not supported for now. What it means
After drizzle-seed calls its per-dialect column-type resolver (selectGeneratorForPostgresColumn / selectGeneratorForMysqlColumn / selectGeneratorForSqlite), it expects a generator instance back. If the resolver returns undefined for the column's columnType, no generator exists for that type and seeding cannot proceed.
Source
Thrown at drizzle-seed/src/services/SeedService.ts:272
else if (connectionType === 'postgresql') {
columnPossibleGenerator.generator = this.selectGeneratorForPostgresColumn(
table,
col,
);
} else if (connectionType === 'mysql') {
columnPossibleGenerator.generator = this.selectGeneratorForMysqlColumn(
table,
col,
);
} else if (connectionType === 'sqlite') {
columnPossibleGenerator.generator = this.selectGeneratorForSqlite(
table,
col,
);
}
if (columnPossibleGenerator.generator === undefined) {
throw new Error(
`column with type ${col.columnType} is not supported for now.`,
);
}
const arrayGen = columnPossibleGenerator.generator.replaceIfArray();
if (arrayGen !== undefined) {
columnPossibleGenerator.generator = arrayGen;
}
columnPossibleGenerator.generator.isUnique = col.isUnique;
const uniqueGen = columnPossibleGenerator.generator.replaceIfUnique();
if (uniqueGen !== undefined) {
columnPossibleGenerator.generator = uniqueGen;
}
// selecting version of generator
columnPossibleGenerator.generator = this.selectVersionOfGenerator(columnPossibleGenerator.generator);
View on GitHub (pinned to b7862528fd)
Solutions
- Provide an explicit generator in refinements.columns for the unsupported column so the auto-resolver is bypassed.
- Temporarily change the column to a supported type (e.g. text) for seeding purposes.
- Make the column nullable and exclude it from refinements so it defaults to null.
Example fix
// before — tsvector column has no auto generator
searchVector: tsvector('search_vector')
// after — supply a generator in refinements
refinements = {
myTable: {
columns: {
searchVector: { generator: generators.string({ minLength: 1, maxLength: 50 }) }
}
}
}; Defensive patterns
Strategy: validation
Validate before calling
// Pre-check whether a column type is in the supported set for the target dialect.
const SUPPORTED_PREFIXES = ['serial', 'integer', 'smallint', 'bigint', 'varchar', 'text', 'boolean', 'date', 'timestamp', 'decimal', 'numeric', 'real', 'double', 'json', 'jsonb', 'uuid', 'interval', 'time'];
function isColumnTypeSupported(columnType: string): boolean {
const base = columnType.replace(/\[\w*\]/g, '');
return SUPPORTED_PREFIXES.some((p) => base.includes(p));
}
// If false, supply a refinement generator for that column. Prevention
- Provide explicit refinements for exotic column types (tsvector, xml, geometry, etc.).
- After upgrading drizzle-orm, check drizzle-seed release notes for newly supported types.
- Run seed on a small count first to surface unsupported types early.
When it happens
Trigger: Using a column type drizzle-seed has no generator for, such as exotic Postgres types (e.g. tsvector, xml, money, bit varying), custom user-defined types, or a newly added drizzle-orm type that seed hasn't mapped yet.
Common situations: Adding a GIS/geometry column, a tsvector full-text column, or a domain type; upgrading drizzle-orm to a version with new column types not yet supported by the installed drizzle-seed.
Related errors
- You can't use company name generator with a db column length
- You can't use lorem ipsum generator with a db column length
- column with type ${col.baseColumn!.columnType} is not suppor
AI-assisted analysis of drizzle-team/drizzle-orm@b7862528fd (2026-08-03).
Data as JSON: /data/errors/7e9c32a3e9095177.json.
Report an issue: GitHub.