diff --git a/packages/cli/src/generators/drizzle.ts b/packages/cli/src/generators/drizzle.ts index f82bc2bbf6..f3e389c5e3 100644 --- a/packages/cli/src/generators/drizzle.ts +++ b/packages/cli/src/generators/drizzle.ts @@ -55,8 +55,12 @@ export const generateDrizzleSchema: SchemaGenerator = async ({ } as const; return typeMap[type as "boolean"][(databaseType as "sqlite") || "sqlite"]; } + const id = + databaseType === "mysql" + ? `varchar("id", { length: 36 }).primaryKey()` + : `text("id").primaryKey()`; const schema = `export const ${modelName} = ${databaseType}Table("${modelName}", { - id: varchar("id", { length: 36 }).primaryKey(), + id: ${id}, ${Object.keys(fields) .map((field) => { const attr = fields[field]; diff --git a/packages/cli/test/__snapshots__/auth-schema.txt b/packages/cli/test/__snapshots__/auth-schema.txt index 1bfe2fbbdc..d2ec891377 100644 --- a/packages/cli/test/__snapshots__/auth-schema.txt +++ b/packages/cli/test/__snapshots__/auth-schema.txt @@ -1,7 +1,7 @@ import { pgTable, text, integer, timestamp, boolean } from "drizzle-orm/pg-core"; export const user = pgTable("user", { - id: varchar("id", { length: 36 }).primaryKey(), + id: text("id").primaryKey(), name: text('name').notNull(), email: text('email').notNull().unique(), emailVerified: boolean('emailVerified').notNull(), @@ -13,7 +13,7 @@ export const user = pgTable("user", { }); export const session = pgTable("session", { - id: varchar("id", { length: 36 }).primaryKey(), + id: text("id").primaryKey(), expiresAt: timestamp('expiresAt').notNull(), token: text('token').notNull().unique(), createdAt: timestamp('createdAt').notNull(), @@ -24,7 +24,7 @@ export const session = pgTable("session", { }); export const account = pgTable("account", { - id: varchar("id", { length: 36 }).primaryKey(), + id: text("id").primaryKey(), accountId: text('accountId').notNull(), providerId: text('providerId').notNull(), userId: text('userId').notNull().references(()=> user.id), @@ -40,7 +40,7 @@ export const account = pgTable("account", { }); export const verification = pgTable("verification", { - id: varchar("id", { length: 36 }).primaryKey(), + id: text("id").primaryKey(), identifier: text('identifier').notNull(), value: text('value').notNull(), expiresAt: timestamp('expiresAt').notNull(), @@ -49,7 +49,7 @@ export const verification = pgTable("verification", { }); export const twoFactor = pgTable("twoFactor", { - id: varchar("id", { length: 36 }).primaryKey(), + id: text("id").primaryKey(), secret: text('secret').notNull(), backupCodes: text('backupCodes').notNull(), userId: text('userId').notNull().references(()=> user.id)