Fix foreign key comparison case sensitive

SQL keywords are case insensitive although they are often written in all caps. Object return from node-sql-parser is actually case sensitive based on the imported sql, thus "foreign key" doesn't work as expected.
This commit is contained in:
zhi 2024-10-27 12:04:04 +08:00
parent 90f70a7074
commit 9d68dd9185

View File

@ -105,7 +105,7 @@ export function fromMySQL(ast, diagramDb = DB.GENERIC) {
}
});
});
} else if (d.constraint_type === "FOREIGN KEY") {
} else if (d.constraint_type.toLowerCase() === "foreign key") {
const relationship = {};
const startTableId = table.id;
const startTable = e.table[0].table;
@ -187,7 +187,7 @@ export function fromMySQL(ast, diagramDb = DB.GENERIC) {
e.expr.forEach((expr) => {
if (
expr.action === "add" &&
expr.create_definitions.constraint_type === "FOREIGN KEY"
expr.create_definitions.constraint_type.toLowerCase() === "foreign key"
) {
const relationship = {};
const startTable = e.table[0].table;