original_string: final public function query_raw($stmt, $args=[]) {
  		$pstmt = $this->prepare_statement($stmt, $args);
  		self::$logger->info(sprintf(
  			"SQL: query raw ok: %s.", $stmt));
  		return $pstmt;
  	}
code: final public function query_raw($stmt, $args=[]) {
  		$pstmt = $this->prepare_statement($stmt, $args);
  		self::$logger->info(sprintf(
  			"SQL: query raw ok: %s.", $stmt));
  		return $pstmt;
  	}
code_tokens: final public function query_raw ( $ stmt , $ args = [ ] ) { $ pstmt = $ this -> prepare_statement ( $ stmt , $ args ) ; self :: $ logger -> info ( sprintf ( "SQL: query raw ok: %s." , $ stmt ) ) ; return $ pstmt ; }
docstring: Execute raw query.
  
  This will execute arbitray single SQL queries. Do not execute
  multiple queries at once to avoid undocumented side effects.
  To execute successive raw queries safely, disable autocommit as
  follows:
  
  @code
  $connection = new SQL(...);
  try {
  $connection = $this->get_connection();
  $connection->beginTransaction();
  $this->query_raw(...);
  $this->query_raw(...);
  $this->query_raw(...);
  $connection->commit();
  } catch(SQLError $e) {
  $connection->rollBack();
  }
  @endcode
  
  @param string $stmt SQL statement.
  @param array $args Arguments in numeric array.
  @return object Executed statement which, depending on `$stmt`,
  can be used for later processing. If `$stmt` is a SELECT
  statement, rows can be fetched from this.
docstring_tokens: Execute raw query .