Cum să folosești placeholder-e în scripturile Flyway
DodaTech
Updated 2025-01-15
1 min read
In this tutorial, you'll learn about Cum să folosești placeholder. We cover key concepts, practical examples, and best practices.
Placeholder-ele în Flyway permit înlocuirea dinamică a valorilor în scripturile SQL în funcție de mediu, eliminând duplicarea scripturilor.
Problema
Aceleași migrări pot necesita valori diferite în funcție de mediu (dev, staging, producție). Fără placeholder-e, ar trebui să menții scripturi separate.
Configurare de bază
# flyway.conf
flyway.placeholderReplacement=true
flyway.placeholders.schema_name=app
flyway.placeholders.admin_user=admin
Script SQL cu placeholder-e
-- db/migration/V2__create_schema.sql
CREATE SCHEMA IF NOT EXISTS ${schema_name};
CREATE TABLE ${schema_name}.config (
key VARCHAR(100),
value VARCHAR(500)
);
INSERT INTO ${schema_name}.config (key, value)
VALUES ('admin', '${admin_user}');
Configurare per mediu
# dev/flyway.conf
flyway.placeholders.schema_name=app_dev
flyway.placeholders.admin_user=admin_dev
# prod/flyway.conf
flyway.placeholders.schema_name=app
flyway.placeholders.admin_user=admin_prod
Linia de comandă
flyway migrate \
-placeholders.schema_name=app_dev \
-placeholders.admin_user=admin_dev
Placeholder-e predefinite
Flyway include câteva placeholder-e implicite:
${flyway.defaultSchema}— schema default${flyway.user}— utilizatorul bazei de date
Erori frecvente
- PlaceholderReplacement=false — dacă e dezactivat,
${...}nu se înlocuiește. - Placeholder nedeclarat — placeholder-ul din SQL nu are o valoare definită.
- Prefix/sufix personalizat — poți schimba
${și}cuflyway.placeholderPrefixșiflyway.placeholderSuffix.
FAQ
Built by the developers of Doda Browser, DodaZIP, and Durga Antivirus Pro. DodaTech tools integrate seamlessly with Flyway for enhanced productivity and security.
Built by the developers of DodaTech
Doda Browser, DodaZIP & Durga Antivirus Pro