Mysql
 sql >> Database >  >> RDS >> Mysql

Determina se un'istruzione sql inizia con la parola SELECT

Sebbene possano essere utilizzate espressioni regolari e altri trucchi basati su testo, un corretto parser SQL come https://pypi.org /progetto/sqlparse/ è la strada da percorrere. Ad esempio:

import sqlparse
statements = sqlparse.parse(my_evil_sql)
for statement in statements:
  if statement.get_type() != "SELECT":
    raise Exception("Non-select statement encountered!")

Nota che get_type() ignora gli spazi bianchi e i commenti all'inizio dell'istruzione.