diff --git a/server/src/test/java/org/apache/calcite/test/ServerTest.java b/server/src/test/java/org/apache/calcite/test/ServerTest.java index 0be7fb16efa1..fac061dafadd 100644 --- a/server/src/test/java/org/apache/calcite/test/ServerTest.java +++ b/server/src/test/java/org/apache/calcite/test/ServerTest.java @@ -262,6 +262,27 @@ static Connection connect() throws SQLException { } } + /** Unit test for + * [CALCITE-5796] + * DELETE statement is not effective. */ + @Test void testDeleteAllRowsWithoutWhereClause() throws Exception { + try (Connection c = connect(); + Statement s = c.createStatement()) { + s.execute("create table t (i int not null, j int not null)"); + s.executeUpdate("insert into t values (1, 10)"); + s.executeUpdate("insert into t values (2, 20)"); + s.executeUpdate("insert into t values (3, 30)"); + + final int count = s.executeUpdate("delete from t"); + assertThat(count, is(3)); + + try (ResultSet r = s.executeQuery("select count(*) from t")) { + assertThat(r.next(), is(true)); + assertThat(r.getInt(1), is(0)); + } + } + } + @Test void testStatement() throws Exception { try (Connection c = connect(); Statement s = c.createStatement();