diff --git hplsql/src/main/antlr4/org/apache/hive/hplsql/Hplsql.g4 hplsql/src/main/antlr4/org/apache/hive/hplsql/Hplsql.g4 index 9dd898e5ff..186b617a13 100644 --- hplsql/src/main/antlr4/org/apache/hive/hplsql/Hplsql.g4 +++ hplsql/src/main/antlr4/org/apache/hive/hplsql/Hplsql.g4 @@ -363,6 +363,7 @@ alter_table_add_constraint_item : dtype : // Data types T_CHAR + | T_CHARACTER | T_BIGINT | T_BINARY_DOUBLE | T_BINARY_FLOAT diff --git hplsql/src/main/java/org/apache/hive/hplsql/Var.java hplsql/src/main/java/org/apache/hive/hplsql/Var.java index 2421c60c07..a117cb6d79 100644 --- hplsql/src/main/java/org/apache/hive/hplsql/Var.java +++ hplsql/src/main/java/org/apache/hive/hplsql/Var.java @@ -327,7 +327,7 @@ else if (type.equalsIgnoreCase("INT") || type.equalsIgnoreCase("INTEGER") || typ return Type.BIGINT; } else if (type.equalsIgnoreCase("CHAR") || type.equalsIgnoreCase("VARCHAR") || type.equalsIgnoreCase("VARCHAR2") || - type.equalsIgnoreCase("STRING") || type.equalsIgnoreCase("XML")) { + type.equalsIgnoreCase("STRING") || type.equalsIgnoreCase("XML") || type.equalsIgnoreCase("CHARACTER")) { return Type.STRING; } else if (type.equalsIgnoreCase("DEC") || type.equalsIgnoreCase("DECIMAL") || type.equalsIgnoreCase("NUMERIC") || diff --git hplsql/src/test/java/org/apache/hive/hplsql/TestHplsqlLocal.java hplsql/src/test/java/org/apache/hive/hplsql/TestHplsqlLocal.java index cac2f8b231..cd0e938073 100644 --- hplsql/src/test/java/org/apache/hive/hplsql/TestHplsqlLocal.java +++ hplsql/src/test/java/org/apache/hive/hplsql/TestHplsqlLocal.java @@ -182,6 +182,11 @@ public void testDeclare2() throws Exception { public void testDeclare3() throws Exception { run("declare3"); } + + @Test + public void testDeclare4() throws Exception { + run("declare4"); + } @Test public void testDeclareCondition() throws Exception { diff --git hplsql/src/test/queries/local/declare4.sql hplsql/src/test/queries/local/declare4.sql new file mode 100644 index 0000000000..8928292459 --- /dev/null +++ hplsql/src/test/queries/local/declare4.sql @@ -0,0 +1,7 @@ +declare + code character(10) not null := 'a'; + code1 character not null := 'ab'; +begin + print code; + print code1; +end; \ No newline at end of file diff --git hplsql/src/test/results/local/declare4.out.txt hplsql/src/test/results/local/declare4.out.txt new file mode 100644 index 0000000000..5f9dcc2a35 --- /dev/null +++ hplsql/src/test/results/local/declare4.out.txt @@ -0,0 +1,6 @@ +Ln:2 DECLARE code character = 'a' +Ln:3 DECLARE code1 character = 'ab' +Ln:5 PRINT +a +Ln:6 PRINT +ab \ No newline at end of file