anchor.diff:      | fetch_cursor
       // https://msdn.microsoft.com/en-us/library/ms190500(v=sql.120).aspx
       | OPEN GLOBAL? cursor_name ';'?
  -    ;
  -
  -// https://msdn.microsoft.com/en-us/library/ms188332.aspx
  -execute_statement
  -    : (EXEC | EXECUTE) (return_status=LOCAL_ID '=')? func_proc_name (execute_statement_arg (',' execute_statement_arg)*)? ';'?
  -    | (EXEC | EXECUTE) '(' execute_var_string ('+' execute_var_string)* ')' (AS? (LOGIN | USER) '=' STRING)? ';'?
  -    ;
  -
  -execute_statement_arg
  -    : (parameter=LOCAL_ID '=')? (constant | LOCAL_ID (OUTPUT | OUT)? | DEFAULT | NULL)
       ;
   
   execute_var_string
  
positive.code: DBCC:                            D B C C;
  DEALLOCATE:                      D E A L L O C A T E;
  DECLARE:                         D E C L A R E;
  DEFAULT:                         D E F A U L T;
  DELETE:                          D E L E T E;
  DENY:                            D E N Y;
  DESC:                            D E S C;
  
negative.code:       for_clause? option_clause? ';'?
      ;
  
  // https://msdn.microsoft.com/en-us/library/ms189499.aspx
  select_statement
      : with_expression? EXACT? query_expression order_by_clause? limit_clause? confidence_clause? ';'?
  