migrate() — drizzle-orm Function Reference
Architecture documentation for the migrate() function in migrator.ts from the drizzle-orm codebase.
Entity Profile
Dependency Diagram
graph TD 0d623036_b199_8b3b_cb5f_f1302b90809e["migrate()"] 9968bfac_85c0_4a20_fc14_94b2593d793b["migrator.ts"] 0d623036_b199_8b3b_cb5f_f1302b90809e -->|defined in| 9968bfac_85c0_4a20_fc14_94b2593d793b 7cddbd66_0608_0488_fc3b_32e74dc95354["readMigrationFiles()"] 0d623036_b199_8b3b_cb5f_f1302b90809e -->|calls| 7cddbd66_0608_0488_fc3b_32e74dc95354 style 0d623036_b199_8b3b_cb5f_f1302b90809e fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
drizzle-orm/src/durable-sqlite/migrator.ts lines 41–85
export async function migrate<
TSchema extends Record<string, unknown>,
>(
db: DrizzleSqliteDODatabase<TSchema>,
config: MigrationConfig,
): Promise<void> {
const migrations = readMigrationFiles(config);
db.transaction((tx) => {
try {
const migrationsTable = '__drizzle_migrations';
const migrationTableCreate = sql`
CREATE TABLE IF NOT EXISTS ${sql.identifier(migrationsTable)} (
id SERIAL PRIMARY KEY,
hash text NOT NULL,
created_at numeric
)
`;
db.run(migrationTableCreate);
const dbMigrations = db.values<[number, string, string]>(
sql`SELECT id, hash, created_at FROM ${sql.identifier(migrationsTable)} ORDER BY created_at DESC LIMIT 1`,
);
const lastDbMigration = dbMigrations[0] ?? undefined;
for (const migration of migrations) {
if (!lastDbMigration || Number(lastDbMigration[2])! < migration.folderMillis) {
for (const stmt of migration.sql) {
db.run(sql.raw(stmt));
}
db.run(
sql`INSERT INTO ${
sql.identifier(migrationsTable)
} ("hash", "created_at") VALUES(${migration.hash}, ${migration.folderMillis})`,
);
}
}
} catch (error: any) {
tx.rollback();
throw error;
}
});
}
Domain
Subdomains
Defined In
Calls
Source
Frequently Asked Questions
What does migrate() do?
migrate() is a function in the drizzle-orm codebase, defined in drizzle-orm/src/durable-sqlite/migrator.ts.
Where is migrate() defined?
migrate() is defined in drizzle-orm/src/durable-sqlite/migrator.ts at line 41.
What does migrate() call?
migrate() calls 1 function(s): readMigrationFiles.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free