Unsupported database features (Prisma Migrate)
Prisma Migrate uses the Prisma schema to determine what features to create in the database. However, some database features cannot be represented in the Prisma schema , including but not limited to:
- Stored procedures
- Triggers
- Views
To add an unsupported feature to your database, you must customize a migration to include that feature before you apply it.
Customize a migration to include an unsupported feature
Section titled “Customize a migration to include an unsupported feature”To customize a migration to include an unsupported feature:
- Use the
--create-onlyflag to generate a new migration without applying it:
bunx prisma migrate dev --create-onlypnpm prisma migrate dev --create-onlyyarn prisma migrate dev --create-onlynpx prisma migrate dev --create-only- Open the generated
migration.sqlfile and add the unsupported feature - for example, a trigger function:
CREATE OR REPLACE FUNCTION notify_on_insert()
RETURNS TRIGGER AS $$
BEGIN
PERFORM pg_notify('new_record', NEW.id::text);
RETURN NEW;
END;
$$ LANGUAGE plpgsql;- Apply the migration:
bunx prisma migrate devpnpm prisma migrate devyarn prisma migrate devnpx prisma migrate dev- Commit the modified migration to source control.