Uploaded image for project: 'Calcite'
  1. Calcite
  2. CALCITE-6977

Unparse DELETE SQL throws unsupported exception

    XMLWordPrintableJSON

Details

    Description

      When i use  SqlDelete.Operator to created  a SqlDelete  , then try to  call toString method unparse to string, it will throw a exception like below:
      java.lang.UnsupportedOperationException: class org.apache.calcite.sql.SqlSyntax$7: SPECIALjava.lang.UnsupportedOperationException: class org.apache.calcite.sql.SqlSyntax$7: SPECIAL
      at org.apache.calcite.util.Util.needToImplement(Util.java:1080) at org.apache.calcite.sql.SqlSyntax$7.unparse(SqlSyntax.java:128) at org.apache.calcite.sql.SqlOperator.unparse(SqlOperator.java:377) at org.apache.calcite.sql.SqlDialect.unparseCall(SqlDialect.java:453) at org.apache.calcite.sql.SqlCall.unparse(SqlCall.java:103) at org.apache.calcite.sql.SqlNode.toSqlString(SqlNode.java:155)

       

      This exception can be reproduced as below:

      ```

      @Test void testSqlDeleteSqlBasicCallToString() throws Exception {
          final String sql = "delete from employees where id = 1 ";
          final SqlNode sqlNode = parseSql(sql);
          final SqlDelete sqlDelete = (SqlDelete) sqlNode;
          final SqlCall call = SqlDelete.OPERATOR.createCall(sqlDelete.getFunctionQuantifier(),
                   sqlDelete.getParserPosition(),sqlDelete.getOperandList());
          System.out.println(call.toString());
      }

      ```

       

      Attachments

        Issue Links

          Activity

            People

              joewee Wei.Zhou
              joewee Wei.Zhou
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: