示例#1
0
def main(unused_argv):
  examples = tsv_utils.read_tsv(FLAGS.input)
  for idx, (_, target) in enumerate(examples):
    if FLAGS.offset and idx < FLAGS.offset:
      continue
    if FLAGS.limit and idx >= FLAGS.limit:
      break
    print("Processing example %s." % idx)

    try:
      _ = sql_parser.parse_sql(target)
    except ValueError as e:
      print(e)
      # Retry parsing with verbose debugging.
      _ = sql_parser.parse_sql(target, verbose=True)
示例#2
0
 def test_parse_simple(self):
     parse = sql_parser.parse_sql("select foo from bar")
     self.assertIsNotNone(parse)
示例#3
0
 def test_parse_2(self):
     parse = sql_parser.parse_sql(SQL_2)
     parse_str = sql_parser.parse_to_str(parse)
     self.assertEqual(parse_str, EXP_PARSE_2)
示例#4
0
def get_compounds(sql_expr):
    root_node = sql_parser.parse_sql(sql_expr)
    compounds = _get_compounds_inner(root_node, None, None, None, None)
    return compounds