@@ -9,40 +9,49 @@ export function toMySQL(diagram) {
99 `CREATE TABLE \`${ table . name } \` (\n${ table . fields
1010 . map (
1111 ( field ) =>
12- `\t\`${ field . name } \` ${ field . type } ${ field . values ? "(" + field . values . map ( value => "'" + value + "'" ) . join ( ", " ) + ")" : "" } ${ field . unsigned ? " UNSIGNED" : "" } ${ field . size !== undefined && field . size !== "" ? "(" + field . size + ")" : "" } ${ field . notNull ? " NOT NULL" : ""
13- } ${ field . increment ? " AUTO_INCREMENT" : ""
14- } ${ field . unique ? " UNIQUE" : "" } ${ field . default !== ""
15- ? ` DEFAULT ${ parseDefault ( field , diagram . database ) } `
16- : ""
17- } ${ field . check === "" ||
12+ `\t\`${ field . name } \` ${ field . type } ${ field . values ? "(" + field . values . map ( ( value ) => "'" + value + "'" ) . join ( ", " ) + ")" : "" } ${ field . unsigned ? " UNSIGNED" : "" } ${ field . size !== undefined && field . size !== "" ? "(" + field . size + ")" : "" } ${
13+ field . notNull ? " NOT NULL" : ""
14+ } ${
15+ field . increment ? " AUTO_INCREMENT" : ""
16+ } ${ field . unique ? " UNIQUE" : "" } ${
17+ field . default !== ""
18+ ? ` DEFAULT ${ parseDefault ( field , diagram . database ) } `
19+ : ""
20+ } ${
21+ field . check === "" ||
1822 ! dbToTypes [ diagram . database ] [ field . type ] . hasCheck
19- ? ""
20- : ` CHECK(${ field . check } )`
23+ ? ""
24+ : ` CHECK(${ field . check } )`
2125 } ${ field . comment ? ` COMMENT '${ field . comment } '` : "" } `,
2226 )
23- . join ( ",\n" ) } ${ table . fields . filter ( ( f ) => f . primary ) . length > 0
24- ? `,\n\tPRIMARY KEY(${ table . fields
25- . filter ( ( f ) => f . primary )
26- . map ( ( f ) => `\`${ f . name } \`` )
27- . join ( ", " ) } )`
28- : ""
27+ . join ( ",\n" ) } ${
28+ table . fields . filter ( ( f ) => f . primary ) . length > 0
29+ ? `,\n\tPRIMARY KEY(${ table . fields
30+ . filter ( ( f ) => f . primary )
31+ . map ( ( f ) => `\`${ f . name } \`` )
32+ . join ( ", " ) } )`
33+ : ""
2934 } \n)${ table . comment ? ` COMMENT='${ table . comment } '` : "" } ;\n${ `\n${ table . indices
3035 . map (
3136 ( i ) =>
32- `\nCREATE ${ i . unique ? "UNIQUE " : "" } INDEX \`${ i . name
37+ `\nCREATE ${ i . unique ? "UNIQUE " : "" } INDEX \`${
38+ i . name
3339 } \`\nON \`${ table . name } \` (${ i . fields
3440 . map ( ( f ) => `\`${ f } \`` )
3541 . join ( ", " ) } );`,
3642 )
3743 . join ( "" ) } `} `,
3844 )
3945 . join ( "\n" ) } \n${ diagram . references
40- . map (
41- ( r ) =>
42- `ALTER TABLE \`${ diagram . tables [ r . startTableId ] . name
43- } \`\nADD FOREIGN KEY(\`${ diagram . tables [ r . startTableId ] . fields [ r . startFieldId ] . name
44- } \`) REFERENCES \`${ diagram . tables [ r . endTableId ] . name } \`(\`${ diagram . tables [ r . endTableId ] . fields [ r . endFieldId ] . name
45- } \`)\nON UPDATE ${ r . updateConstraint . toUpperCase ( ) } ON DELETE ${ r . deleteConstraint . toUpperCase ( ) } ;`,
46- )
47- . join ( "\n" ) } `;
46+ . map (
47+ ( r ) =>
48+ `ALTER TABLE \`${
49+ diagram . tables [ r . startTableId ] . name
50+ } \`\nADD FOREIGN KEY(\`${
51+ diagram . tables [ r . startTableId ] . fields [ r . startFieldId ] . name
52+ } \`) REFERENCES \`${ diagram . tables [ r . endTableId ] . name } \`(\`${
53+ diagram . tables [ r . endTableId ] . fields [ r . endFieldId ] . name
54+ } \`)\nON UPDATE ${ r . updateConstraint . toUpperCase ( ) } ON DELETE ${ r . deleteConstraint . toUpperCase ( ) } ;`,
55+ )
56+ . join ( "\n" ) } `;
4857}
0 commit comments