class_docstr: This is a base class for generic SQL Operator to get a DB Hook.
  
  The provided method is .get_db_hook(). The default behavior will try to
  retrieve the DB hook based on connection type.
  You can customize the behavior by overriding the .get_db_hook() method.
  
  :param conn_id: reference to a specific database
class_docstr_tok: ["This","is","a","base","class","for","generic","SQL","Operator","to","get","a","DB","Hook",".","The","provided","method","is",".get_db_hook","(",")",".","The","default","behavior","will","try","to","retrieve","the","DB","hook","based","on","connection","type",".","You","can","customize","the","behavior","by","overriding","the",".get_db_hook","(",")","method",".",":","param","conn_id",":","reference","to","a","specific","database"]
code: def _raise_exception(self, exception_string: str) -> NoReturn:
      if self.retry_on_failure:
          raise AirflowException(exception_string)
      raise AirflowFailException(exception_string)
  
imports: from __future__ import annotations
  import ast
  import re
  from functools import cached_property
  from typing import TYPE_CHECKING, Any, Callable, Iterable, Mapping, NoReturn, Sequence, SupportsAbs
  from airflow.exceptions import AirflowException, AirflowFailException
  from airflow.hooks.base import BaseHook
  from airflow.models import BaseOperator, SkipMixin
  from airflow.providers.common.sql.hooks.sql import DbApiHook, fetch_all_handler, return_single_query_results
  from airflow.utils.helpers import merge_dicts
label_desc: Use image node_id 4 for calling the BaseSQLOperator obj's underlying member method code with example usage: obj._raise_exception(exception_string) without return types