Skip to content

Commit a923e7e

Browse files
committed
fixes #1027
1 parent db6acef commit a923e7e

File tree

2 files changed

+15
-1
lines changed

2 files changed

+15
-1
lines changed

src/main/java/net/sf/jsqlparser/schema/Table.java

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -102,7 +102,12 @@ private void setIndex(int idx, String value) {
102102
for (int i = 0; i < idx - size + 1; i++) {
103103
partItems.add(null);
104104
}
105-
partItems.set(idx, value);
105+
106+
if (value == null && idx == partItems.size() - 1) {
107+
partItems.remove(idx);
108+
} else {
109+
partItems.set(idx, value);
110+
}
106111
}
107112

108113
private String getIndex(int idx) {

src/test/java/net/sf/jsqlparser/schema/TableTest.java

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@
1515
import net.sf.jsqlparser.statement.select.Select;
1616
import net.sf.jsqlparser.util.deparser.ExpressionDeParser;
1717
import net.sf.jsqlparser.util.deparser.SelectDeParser;
18+
import static org.assertj.core.api.Assertions.assertThat;
1819
import static org.junit.Assert.assertEquals;
1920
import org.junit.Test;
2021

@@ -62,4 +63,12 @@ public void visit(Table tableName) {
6263
deparser.visit((PlainSelect) select.getSelectBody());
6364

6465
}
66+
67+
@Test
68+
public void testTableRemoveNameParts() {
69+
Table table = new Table("link", "DICTIONARY");
70+
assertThat(table.getFullyQualifiedName()).isEqualTo("link.DICTIONARY");
71+
table.setSchemaName(null);
72+
assertThat(table.getFullyQualifiedName()).isEqualTo("DICTIONARY");
73+
}
6574
}

0 commit comments

Comments
 (0)