Support ON UPDATE SET DEFAULT and the same for ON DELETE in PostgreSQL foreign keys. See https://www.heidisql.com/forum.php?t=40413

This commit is contained in:
Ansgar Becker
2023-03-06 20:12:13 +01:00
parent 0fedb314eb
commit 82b1a0fe8f
2 changed files with 4 additions and 2 deletions

View File

@ -421,7 +421,7 @@ type
TSQLSpecifityId = (spDatabaseTable, spDatabaseTableId, spDatabaseDrop, TSQLSpecifityId = (spDatabaseTable, spDatabaseTableId, spDatabaseDrop,
spDbObjectsTable, spDbObjectsCreateCol, spDbObjectsUpdateCol, spDbObjectsTypeCol, spDbObjectsTable, spDbObjectsCreateCol, spDbObjectsUpdateCol, spDbObjectsTypeCol,
spEmptyTable, spRenameTable, spRenameView, spCurrentUserHost, spLikeCompare, spEmptyTable, spRenameTable, spRenameView, spCurrentUserHost, spLikeCompare,
spAddColumn, spChangeColumn, spRenameColumn, spAddColumn, spChangeColumn, spRenameColumn, spForeignKeyEventAction,
spGlobalStatus, spCommandsCounters, spSessionVariables, spGlobalVariables, spGlobalStatus, spCommandsCounters, spSessionVariables, spGlobalVariables,
spISSchemaCol, spISSchemaCol,
spUSEQuery, spKillQuery, spKillProcess, spUSEQuery, spKillQuery, spKillProcess,
@ -3033,6 +3033,7 @@ begin
FSQLSpecifities[spOrderAsc] := 'ASC'; FSQLSpecifities[spOrderAsc] := 'ASC';
FSQLSpecifities[spOrderDesc] := 'DESC'; FSQLSpecifities[spOrderDesc] := 'DESC';
FSQLSpecifities[spForeignKeyEventAction] := 'RESTRICT,CASCADE,SET NULL,NO ACTION';
case Parameters.NetTypeGroup of case Parameters.NetTypeGroup of
ngMySQL: begin ngMySQL: begin
@ -3107,6 +3108,7 @@ begin
FSQLSpecifities[spAddColumn] := 'ADD %s'; FSQLSpecifities[spAddColumn] := 'ADD %s';
FSQLSpecifities[spChangeColumn] := 'ALTER COLUMN %s %s'; FSQLSpecifities[spChangeColumn] := 'ALTER COLUMN %s %s';
FSQLSpecifities[spRenameColumn] := 'RENAME COLUMN %s TO %s'; FSQLSpecifities[spRenameColumn] := 'RENAME COLUMN %s TO %s';
FSQLSpecifities[spForeignKeyEventAction] := 'RESTRICT,CASCADE,SET NULL,NO ACTION,SET DEFAULT';
FSQLSpecifities[spSessionVariables] := 'SHOW ALL'; FSQLSpecifities[spSessionVariables] := 'SHOW ALL';
FSQLSpecifities[spGlobalVariables] := FSQLSpecifities[spSessionVariables]; FSQLSpecifities[spGlobalVariables] := FSQLSpecifities[spSessionVariables];
FSQLSpecifities[spISSchemaCol] := '%s_schema'; FSQLSpecifities[spISSchemaCol] := '%s_schema';

View File

@ -2645,7 +2645,7 @@ begin
end; end;
4, 5: begin 4, 5: begin
EnumEditor := TEnumEditorLink.Create(VT, True, nil); EnumEditor := TEnumEditorLink.Create(VT, True, nil);
EnumEditor.ValueList.Text := 'RESTRICT'+CRLF+'CASCADE'+CRLF+'SET NULL'+CRLF+'NO ACTION'; EnumEditor.ValueList := Explode(',', DBObject.Connection.GetSQLSpecifity(spForeignKeyEventAction));
EditLink := EnumEditor; EditLink := EnumEditor;
end; end;
end; end;