def _gather_sql_placeholders(body):
p = sqlparse.parse(body)
assert len(p) == 1
p = p[0]
tokens = list(p.flatten())
names = [x.value[1:] for x in tokens if x.ttype == Token.Name.Placeholder]
return sorted(set(names))
文章目录