docstr: Returns the table by ID
  Arguments:
      table_id (int)
      return_alchemy (bool): if True, return a sqlalchemy object
  Returns:
     TableCatalogEntry
docstr_tok: ["Returns","the","table","by","ID","Arguments",":","table_id","(","int",")","return_alchemy","(","bool",")",":","if","True",",","return","a","sqlalchemy","object","Returns",":","TableCatalogEntry"]
code: def get_entry_by_id(
      self, table_id: int, return_alchemy=False
  ) -> TableCatalogEntry:
      """
      Returns the table by ID
      Arguments:
          table_id (int)
          return_alchemy (bool): if True, return a sqlalchemy object
      Returns:
         TableCatalogEntry
      """
      entry = self.session.execute(
          select(self.model).filter(self.model._row_id == table_id)
      ).scalar_one()
      return entry if return_alchemy else entry.as_dataclass()
  
file_path: evadb/evadb/catalog/services/table_catalog_service.py
imports: from sqlalchemy.orm import Session
  from sqlalchemy.sql.expression import select
  from evadb.catalog.catalog_type import TableType
  from evadb.catalog.models.table_catalog import TableCatalog, TableCatalogEntry
  from evadb.catalog.services.base_service import BaseService
  from evadb.catalog.services.column_catalog_service import ColumnCatalogService
  from evadb.utils.errors import CatalogError
  from evadb.utils.logging_manager import logger
label_desc: Use image node_id 3 for calling the TableCatalogService obj's underlying member method code with example usage: obj.get_entry_by_id(table_id, return_alchemy) and returns: unknown