diff --git a/plugins/org.jkiss.dbeaver.ext.mysql/src/org/jkiss/dbeaver/ext/mysql/edit/MySQLCommandGrantPrivilege.java b/plugins/org.jkiss.dbeaver.ext.mysql/src/org/jkiss/dbeaver/ext/mysql/edit/MySQLCommandGrantPrivilege.java index e760fc4652a37f549ce67c645b12c219a87bd0b9..57b3966c484716b3cf9c52c049c501e41cfcc9fa 100644 --- a/plugins/org.jkiss.dbeaver.ext.mysql/src/org/jkiss/dbeaver/ext/mysql/edit/MySQLCommandGrantPrivilege.java +++ b/plugins/org.jkiss.dbeaver.ext.mysql/src/org/jkiss/dbeaver/ext/mysql/edit/MySQLCommandGrantPrivilege.java @@ -58,7 +58,7 @@ public class MySQLCommandGrantPrivilege extends DBECommandAbstract { @Override public DBEPersistAction[] getPersistActions(Map options) { - String privName = privilege.getName(); + String privName = privilege.getFixedPrivilegeName(); String grantScript = "GRANT " + privName + //$NON-NLS-1$ " ON " + getObjectName() + //$NON-NLS-1$ " TO " + getObject().getFullName() + ""; //$NON-NLS-1$ //$NON-NLS-2$ diff --git a/plugins/org.jkiss.dbeaver.ext.mysql/src/org/jkiss/dbeaver/ext/mysql/model/MySQLPrivilege.java b/plugins/org.jkiss.dbeaver.ext.mysql/src/org/jkiss/dbeaver/ext/mysql/model/MySQLPrivilege.java index 5327adc04c03438c6e06765f22f321a4e0f38d58..b9f6747aaa242664dc45cdb7fa0244096a5cd2f7 100644 --- a/plugins/org.jkiss.dbeaver.ext.mysql/src/org/jkiss/dbeaver/ext/mysql/model/MySQLPrivilege.java +++ b/plugins/org.jkiss.dbeaver.ext.mysql/src/org/jkiss/dbeaver/ext/mysql/model/MySQLPrivilege.java @@ -26,6 +26,8 @@ import org.jkiss.dbeaver.model.meta.Property; import org.jkiss.dbeaver.model.struct.DBSObject; import java.sql.ResultSet; +import java.util.HashMap; +import java.util.Map; /** * MySQLPrivilege @@ -37,6 +39,12 @@ public class MySQLPrivilege implements DBAPrivilege public static final String GRANT_PRIVILEGE = "Grant Option"; public static final String ALL_PRIVILEGES = "All Privileges"; + public static final Map BAD_PRIV_NAME_MAP = new HashMap<>(); + + static { + BAD_PRIV_NAME_MAP.put("Delete versioning rows", "Delete history"); + } + public enum Kind { OBJECTS, DDL, @@ -79,6 +87,14 @@ public class MySQLPrivilege implements DBAPrivilege return name; } + public String getFixedPrivilegeName() { + String fixedName = BAD_PRIV_NAME_MAP.get(name); + if (fixedName != null) { + return fixedName; + } + return name; + } + @Property(viewable = true, order = 2) public String getContext() {