- 05 Apr, 2017 40 commits
-
-
Alexander Barkov authored
-
Alexander Barkov authored
-
Alexander Barkov authored
An additional change for "Part 9: EXCEPTION handlers" This construct: EXCEPTION WHEN OTHERS THEN ...; now catches warning-alike conditions, e.g. NO_DATA_FOUND.
-
Alexander Barkov authored
MDEV-10867 PREPARE..EXECUTE is not consistent about non-ASCII characters Adding Oracle specific tests
-
Alexander Barkov authored
A fix for MDEV-10411 Providing compatibility for basic PL/SQL constructs (Part 6: Assignment operator) Fixed that a crash in this script: SET sql_mode=ORACLE; max_sort_length:= 1024;
-
Alexander Barkov authored
-
Alexander Barkov authored
-
Alexander Barkov authored
Fixed that EXPLAIN EXTENDED erroneously returned "SQL%%ROWCOUNT" instead of "SQL%ROWCOUNT"
-
Alexander Barkov authored
Adding Oracle-specific tests for stored functions as EXECUTE..USING parameters.
-
Alexander Barkov authored
Adding Oracle specific tests
-
Alexander Barkov authored
-
Alexander Barkov authored
-
Alexander Barkov authored
Adding Oracle specific tests
-
Alexander Barkov authored
Adding the Oracle style DECODE function: DECODE(operand, search, result [, search, result ...] [, default_result])
-
Alexander Barkov authored
MDEV-10596 Allow VARCHAR and VARCHAR2 without length as a data type of routine parameters and in RETURN clause
-
Alexander Barkov authored
-
Alexander Barkov authored
The crash happened because of a wrong reset_lex() .. restore_lex() sequence. The Item in WHERE clause and the corresponding sp_instr_jump_if_not() were erroneously created using different LEX.
-
Alexander Barkov authored
This is a fix for "MDEV-10580 sql_mode=ORACLE: FOR loop statement" The tokenizer now treats digits followed by two dots (e.g. '1..') as an integer number '1' followed by DOT_DOT_SYM. Previously this sequence was treated as a double number '1.' followed by '.'.
-
Alexander Barkov authored
Fixed a crash when trying to use a FOR loop as a compound statement outside of an SP. A bug in 051e415d8a251bd70e9b73619dbcc40f3c65371d.
-
Alexander Barkov authored
Adding functions NVL() and NVL2().
-
Alexander Barkov authored
as this type of SHOW is only available in debug builds. A bug in b7af3e704dd7800638ef677e9d921ad3e467a9a6. All SHOW FUNCTION CODE queries should be in compat/oracle.sp-code.
-
Alexander Barkov authored
-
Alexander Barkov authored
Part 19: CONTINUE statement
-
Alexander Barkov authored
Fixed that the ITERATE statement inside a FOR LOOP statement did not increment the index variable before jumping to the beginning of the loop, which caused the loop to repeat endlessly.
-
Alexander Barkov authored
Adding labeled FOR LOOP
-
Alexander Barkov authored
Adding non-labeled FOR LOOP statement.
-
Alexander Barkov authored
from "const Lex_field_type_st &" to "const Column_definition &".
-
Alexander Barkov authored
Adding methods: - LEX::sp_while_loop_expression() - LEX::sp_while_loop_finalize() to reuse code between sql_yacc.yy and sql_yacc_ora.yy. FOR loop will also reuse these methods.
-
Alexander Barkov authored
Part 18: WHILE syntax
-
Alexander Barkov authored
Part 17: RETURN in stored procedures
-
Alexander Barkov authored
Part 16: CURSOR declaration
-
Alexander Barkov authored
Part 15: ELSIF vs ELSEIF Also, moving tests for Oracle keywords in sql_mode=DEFAULT from "parser.test" to a better place "keywords.test".
-
Alexander Barkov authored
Part 5: EXIT statement Adding optional WHEN clause: EXIT [label] [WHEN expr]
-
Alexander Barkov authored
Part 5: EXIT statement Adding unconditional EXIT statement: EXIT [ label ] Conditional EXIT statements with WHERE clause will be added in a separate patch.
-
Alexander Barkov authored
Moving similar code from sql_yacc.yy and sql_yacc_ora.yy to methods: LEX::maybe_start_compound_statement() LEX::sp_push_loop_label() LEX::sp_push_loop_empty_label() LEX::sp_pop_loop_label() LEX::sp_pop_loop_empty_label() The EXIT statement will also reuse this code.
-
Alexander Barkov authored
Moving the code from *.yy to methods: LEX::sp_change_context() LEX::sp_leave_statement() LEX::sp_iterate_statement() to reuse the same code between LEAVE and ITERATE statements. EXIT statement will also reuse the same code.
-
Alexander Barkov authored
Part 9: EXCEPTION handlers EXCEPTION is now supported in inner blocks.
-
Alexander Barkov authored
When processing an SP body: CREATE PROCEDURE p1 (parameters) AS [ declarations ] BEGIN statements [ EXCEPTION exceptions ] END; the parser generates two "jump" instructions: - from the end of "declarations" to the beginning of EXCEPTION - from the end of EXCEPTION to "statements" These jumps are useless if EXCEPTION does not exist. This patch makes sure that these two "jump" instructions are generated only if EXCEPTION really exists.
-
Alexander Barkov authored
-
Alexander Barkov authored
- Part 9: EXCEPTION handlers The top-most stored routine blocks now support EXCEPTION clause in its correct place: AS [ declarations ] BEGIN statements [ EXCEPTION exceptions ] END Inner block will be done in a separate commit. - Part 14: IN OUT instead of INOUT (in SP parameter declarations)
-