code: func (db *SQLDB) getBlockTables(height uint64) (types.EventTables, error) {
  	tables := make(types.EventTables)
  
  	query := db.DBAdapter.SelectLogQuery()
  	db.Log.Info("msg", "QUERY LOG", "query", query, "value", height)
  
  	rows, err := db.DB.Query(query, height)
  	if err != nil {
  		db.Log.Info("msg", "Error querying log", "err", err)
  		return tables, err
  	}
  	defer rows.Close()
  
  	for rows.Next() {
  		var eventName, tableName string
  		var table *types.SQLTable
  
  		err = rows.Scan(&tableName, &eventName)
  		if err != nil {
  			db.Log.Info("msg", "Error scanning table structure", "err", err)
  			return tables, err
  		}
  
  		err = rows.Err()
  		if err != nil {
  			db.Log.Info("msg", "Error scanning table structure", "err", err)
  			return tables, err
  		}
  
  		table, err = db.getTableDef(tableName)
  		if err != nil {
  			return tables, err
  		}
  
  		tables[tableName] = table
  	}
  
  	return tables, nil
  }
docs: // getBlockTables return all SQL tables that have been involved
  // in a given batch transaction for a specific block