Cum să adaugi chei străine cu Liquibase
DodaTech
Updated 2025-01-15
1 min read
In this tutorial, you'll learn about Cum să adaugi chei străine cu Liquibase. We cover key concepts, practical examples, and best practices.
Constrângerile de cheie străină (foreign key) asigură integritatea referențială între tabele. Liquibase oferă addForeignKeyConstraint pentru această operațiune.
Problema
Trebuie să definești relația dintre două tabele. O cheie străină asigură că valorile dintr-o coloană corespund înregistrărilor din tabela părinte.
Adăugarea unei chei străine
În XML:
<changeSet id="add-fk-orders-users" author="ionut">
<addForeignKeyConstraint
constraintName="fk_orders_users"
baseTableName="orders"
baseColumnNames="user_id"
referencedTableName="users"
referencedColumnNames="id"/>
<rollback>
<dropForeignKeyConstraint
baseTableName="orders"
constraintName="fk_orders_users"/>
</rollback>
</changeSet>
În YAML:
- changeSet:
id: add-fk-orders-users
author: ionut
changes:
- addForeignKeyConstraint:
constraintName: fk_orders_users
baseTableName: orders
baseColumnNames: user_id
referencedTableName: users
referencedColumnNames: id
Acțiuni ON DELETE/UPDATE
- addForeignKeyConstraint:
constraintName: fk_orders_users
baseTableName: orders
baseColumnNames: user_id
referencedTableName: users
referencedColumnNames: id
onDelete: CASCADE
onUpdate: RESTRICT
Erori frecvente
- Tipuri diferite — coloanele trebuie să aibă același tip de date.
- Tabelă inexistentă — tabela referită trebuie să existe.
- Cheie duplicat — numele constrângerii trebuie să fie unic.
- Date orfane — înregistrările cu ID-uri care nu există în tabela părinte blochează crearea cheii.
FAQ
Built by the developers of Doda Browser, DodaZIP, and Durga Antivirus Pro. DodaTech tools integrate seamlessly with Liquibase for enhanced productivity and security.
Built by the developers of DodaTech
Doda Browser, DodaZIP & Durga Antivirus Pro