16 lines
526 B
JavaScript
16 lines
526 B
JavaScript
import { sqlQuoteIdent as q } from "../../utils/sql-safe";
|
|
/**
|
|
* Build foreign key constraint
|
|
*/
|
|
export default function buildForeignKeyConstraint(field) {
|
|
const fk = field.foreignKey;
|
|
let constraint = `FOREIGN KEY (${q(field.fieldName)}) REFERENCES ${q(String(fk.destinationTableName))}(${q(String(fk.destinationTableColumnName))})`;
|
|
if (fk.cascadeDelete) {
|
|
constraint += " ON DELETE CASCADE";
|
|
}
|
|
if (fk.cascadeUpdate) {
|
|
constraint += " ON UPDATE CASCADE";
|
|
}
|
|
return constraint;
|
|
}
|