Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Determinar se uma instrução sql começa com a palavra SELECT


Embora regexes e outros truques baseados em texto possam ser empregados, um analisador SQL adequado, como https://pypi.org /project/sqlparse/ é o caminho a seguir. Por exemplo:
import sqlparse
statements = sqlparse.parse(my_evil_sql)
for statement in statements:
  if statement.get_type() != "SELECT":
    raise Exception("Non-select statement encountered!")

Observe que get_type() ignora espaços em branco e comentários no início da instrução.