code: def table_dataset_database_table(
      table              = None,
      include_attributes = None,
      rows_limit         = None,
      print_progress     = False,
      ):
  
      
  
      if print_progress:
          import shijian
          progress = shijian.Progress()
          progress.engage_quick_calculation_mode()
          number_of_rows = len(table)
  
      if include_attributes:
          columns = include_attributes
      else:
          columns = table.columns
      table_contents = [columns]
      for index_row, row in enumerate(table):
          if rows_limit is not None:
              if index_row >= rows_limit:
                  break
          row_contents = []
          for column in columns:
              try:
                  string_representation = str(row[column])
              except:
                  string_representation = str(row[column].encode("utf-8"))
              row_contents.append(string_representation)
          table_contents.append(row_contents)
          if print_progress:
              print(progress.add_datum(
                  fraction = float(index_row) / float(number_of_rows))
              )
  
      return table_contents
docs: Create a pyprel table contents list from a database table of the module
      dataset. Attributes to be included in the table can be specified; by
      default, all attributes are included. A limit on the number of rows included
      can be specified. Progress on building the table can be reported.