implement sql_mode NO_BACKSLASH_ESCAPES
This commit is contained in:
@ -574,7 +574,10 @@ FALSE {
|
||||
COPY_STR_NODE_TO_TMP_LITERAL(yylval->node);
|
||||
bool is_real_escape = true;
|
||||
CHECK_REAL_ESCAPE(is_real_escape);
|
||||
if (!is_real_escape) {
|
||||
ObSQLMode mode = p->sql_mode_;
|
||||
bool is_no_backslash_escapes = false;
|
||||
IS_NO_BACKSLASH_ESCAPES(mode, is_no_backslash_escapes);
|
||||
if (!is_real_escape || is_no_backslash_escapes) {
|
||||
HANDLE_FALSE_ESCAPE(p);
|
||||
} else {
|
||||
HANDLE_ESCAPE(p);
|
||||
@ -695,7 +698,11 @@ FALSE {
|
||||
check_value(yylval);
|
||||
bool is_real_escape = true;
|
||||
CHECK_REAL_ESCAPE(is_real_escape);
|
||||
if (!is_real_escape) {
|
||||
//check sql_mode
|
||||
ObSQLMode mode = p->sql_mode_;
|
||||
bool is_no_backslash_escapes = false;
|
||||
IS_NO_BACKSLASH_ESCAPES(mode, is_no_backslash_escapes);
|
||||
if (!is_real_escape || is_no_backslash_escapes) {
|
||||
HANDLE_FALSE_ESCAPE(p);
|
||||
} else {
|
||||
HANDLE_ESCAPE(p);
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@ -72267,7 +72267,7 @@ extern int obsql_mysql_yylex \
|
||||
#undef YY_DECL
|
||||
#endif
|
||||
|
||||
#line 1472 "../../../src/sql/parser/sql_parser_mysql_mode.l"
|
||||
#line 1479 "../../../src/sql/parser/sql_parser_mysql_mode.l"
|
||||
|
||||
|
||||
#line 72274 "../../../src/sql/parser/sql_parser_mysql_mode_lex.h"
|
||||
|
||||
Reference in New Issue
Block a user