class_docstr: This handler handles connection and execution of the SurrealDB statements.
class_docstr_tok: ["This","handler","handles","connection","and","execution","of","the","SurrealDB","statements","."]
docstr: Establishes a connection to the MindsDB database.
  Returns:
      HandlerStatusResponse
docstr_tok: ["Establishes","a","connection","to","the","MindsDB","database",".","Returns",":","HandlerStatusResponse"]
code: def connect(self):
      """
      Establishes a connection to the MindsDB database.
      Returns:
          HandlerStatusResponse
      """
      if self.is_connected is True:
          return self.connection
      try:
          self.connection = surreal.connect(
              database=self.database,
              host=self.host,
              port=self.port,
              user=self.user,
              password=self.password,
              namespace=self.namespace,
          )
          self.is_connected = True
      except Exception as e:
          logger.error(f"Error while connecting to SurrealDB, {e}")
  
      return self.connection
  
imports: from collections import OrderedDict
  from typing import Optional
  from mindsdb_sql.parser.ast.base import ASTNode
  from mindsdb.integrations.libs.base import DatabaseHandler
  from mindsdb.utilities import log
  from mindsdb_sql import parse_sql
  from mindsdb.integrations.libs.response import HandlerStatusResponse, HandlerResponse, RESPONSE_TYPE
  from mindsdb.integrations.libs.const import HANDLER_CONNECTION_ARG_TYPE
  from .utils.surreal_get_info import *
  import pysurrealdb
  import pandas
label_desc: Use image node_id 2 for calling the SurrealDBHandler obj's underlying member method code with example usage: obj.connect() and returns: self, self