code: def test_explain_relational(self):
      video_file_path = create_sample_video(10)
  
      cursor = self.conn.cursor()
      # load video
      rel = cursor.load(
          video_file_path,
          table_name="dummy_video",
          format="video",
      )
      rel.execute()
  
      result = cursor.explain("SELECT * FROM dummy_video").df()
      self.assertEqual(len(result), 1)
      self.assertEqual(
          result[0][0],
          "|__ ProjectPlan\n    |__ SeqScanPlan\n        |__ StoragePlan\n",
      )
  
imports: import unittest
  from test.markers import qdrant_skip_marker
  from test.util import DummyObjectDetector, create_sample_video, load_functions_for_testing, shutdown_ray, suffix_pytest_xdist_worker_id_to_dir
  import numpy
  import pandas
  from pandas.testing import assert_frame_equal
  from evadb.binder.binder_utils import BinderError
  from evadb.configuration.constants import DEFAULT_DOCUMENT_CHUNK_OVERLAP, DEFAULT_DOCUMENT_CHUNK_SIZE, EvaDB_DATABASE_DIR, EvaDB_ROOT_DIR
  from evadb.executor.executor_utils import ExecutorError
  from evadb.interfaces.relational.db import connect
  from evadb.models.storage.batch import Batch
  from evadb.server.command_handler import execute_query_fetch_all
label_desc: Use image node_id 14 for calling the RelationalAPI obj's underlying member method code with example usage: obj.test_explain_relational() without return types