Приведение присутствует только для преобразования константного адреса в неконстантный адрес .
db_table
- это вектор const struct db_table_s
, тогда db_table[0]
- это const struct db_table_s
, тогда &(db_table[0])
- это const struct db_table_s *
Вероятно, код хочет (сильно) запомнить этот указатель, пока у нас есть struct db_table_s * data_ptr;
, поэтому его необходимо привести, чтобы избежать предупреждения.
Актерский состав бесполезен в случае const struct db_table_s * data_ptr;
P.S. в вашем коде отсутствуют ',' и ';' : - (