From b34563159390b99b434a57f8c22b921d1300651f Mon Sep 17 00:00:00 2001 From: LonwoLonwo Date: Fri, 25 Sep 2020 17:31:19 +0300 Subject: [PATCH] #4644 extra options added in table DDL --- .../postgresql/model/PostgreTableBase.java | 2 +- .../impls/PostgreServerExtensionBase.java | 24 +++++++++++++++++-- .../properties/TabbedFolderPageForm.java | 4 +++- 3 files changed, 26 insertions(+), 4 deletions(-) diff --git a/plugins/org.jkiss.dbeaver.ext.postgresql/src/org/jkiss/dbeaver/ext/postgresql/model/PostgreTableBase.java b/plugins/org.jkiss.dbeaver.ext.postgresql/src/org/jkiss/dbeaver/ext/postgresql/model/PostgreTableBase.java index cf434d646c..0373fe3ded 100644 --- a/plugins/org.jkiss.dbeaver.ext.postgresql/src/org/jkiss/dbeaver/ext/postgresql/model/PostgreTableBase.java +++ b/plugins/org.jkiss.dbeaver.ext.postgresql/src/org/jkiss/dbeaver/ext/postgresql/model/PostgreTableBase.java @@ -129,7 +129,7 @@ public abstract class PostgreTableBase extends JDBCTable extraOptions = new ArrayList<>(); + + if (tableSupportOids) { + extraOptions.add("OIDS=TRUE"); + } + if (hasExtraOptions) { + extraOptions.addAll(Arrays.asList(table.getRelOptions())); + } + + if (!CommonUtils.isEmpty(extraOptions)) { + withClauseBuilder.append("\nWITH (\n\t"); + for (int i = 0; i < extraOptions.size(); i++) { + if (i == 0) { + withClauseBuilder.append(extraOptions.get(i)); + } else { + withClauseBuilder.append(",\n\t").append(extraOptions.get(i)); + } + } withClauseBuilder.append("\n)"); } diff --git a/plugins/org.jkiss.dbeaver.ui.navigator/src/org/jkiss/dbeaver/ui/editors/entity/properties/TabbedFolderPageForm.java b/plugins/org.jkiss.dbeaver.ui.navigator/src/org/jkiss/dbeaver/ui/editors/entity/properties/TabbedFolderPageForm.java index e0d6836905..723442706a 100644 --- a/plugins/org.jkiss.dbeaver.ui.navigator/src/org/jkiss/dbeaver/ui/editors/entity/properties/TabbedFolderPageForm.java +++ b/plugins/org.jkiss.dbeaver.ui.navigator/src/org/jkiss/dbeaver/ui/editors/entity/properties/TabbedFolderPageForm.java @@ -719,7 +719,9 @@ public class TabbedFolderPageForm extends TabbedFolderPage implements IRefreshab } private static boolean isTextPropertyType(Class propertyType) { - return propertyType == null || CharSequence.class.isAssignableFrom(propertyType) || BeanUtils.isNumericType(propertyType); + return propertyType == null || CharSequence.class.isAssignableFrom(propertyType) || + (propertyType.getComponentType() != null && CharSequence.class.isAssignableFrom(propertyType.getComponentType())) || + BeanUtils.isNumericType(propertyType); } private List filterProperties(DBPPropertyDescriptor[] props) { -- GitLab