Error: There is not enough information to infer relation

Hey,

I'm trying to convert a Prisma schema to Drizzle.

Here's the schema:

export const messages = mysqlTable(
  "Message",
  {
    id: varchar("id", { length: 256 }).primaryKey(),
    whatsappId: varchar("whatsappId", { length: 256 }).unique(),
    messageFrom: varchar("messageFrom", { length: 256 }),
    messageTo: varchar("messageTo", { length: 256 }),
    content: text("content"),
    createdAt: timestamp("createdAt")
      .default(sql`CURRENT_TIMESTAMP`)
      .notNull(),
    replyToId: bigint("replyToId", { mode: "number" }),
    type: MessageType.default("textMessage"),
    mediaId: varchar("mediaId", { length: 256 }),
    caption: text("caption"),
    conversationId: bigint("conversationId", { mode: "number" }),
    userId: varchar("userId", { length: 256 }),
    status: MessageStatus.default("SENT"),
    deliveredAt: timestamp("deliveredAt"),
    readAt: timestamp("readAt"),
    forwarded: boolean("forwarded"),
    address: text("address"),
    latitude: varchar("latitude", { length: 256 }),
    longitude: varchar("longitude", { length: 256 }),
    name: text("name"),
    url: text("url"),
    voice: boolean("voice"),
    fileType: text("fileType"),
    fileName: text("fileName"),
    contactName: text("contactName"),
    contactPhone: varchar("contactPhone", { length: 256 }),
  },
  (table) => {
    return {
      whatsappIdIdx: index("whatsappId_idx").on(table.whatsappId),
      replyToIdIdx: index("replyToId_idx").on(table.replyToId),
      conversationIdIdx: index("conversationId_idx").on(table.conversationId),
      userIdIdx: index("userId_idx").on(table.userId),
      messageIdIdx: index("messageId_idx").on(
        table.messageFrom,
        table.messageTo,
        table.createdAt,
      ),
    };
  },
);


When I try to run
drizzle-kit studio
I get this error: "rror: There is not enough information to infer relation "public.messages.replies"
at normalizeRelation"

Am I doing something wrong here?
Was this page helpful?