DB2

Материал из YTDB DataBase

Перейти к: навигация, поиск

Содержание

DB2

DB2 файлы новая версия базы данных на стороне клиента, введенных в Cataclysm, содержащий данные об объектах, NPC, окружающей среды, мира и многое другое. За исключением заголовка они в значительной степени эквивалентныDBC files. Вы можете также посмотреть на них.Структура, описанная здесь также используется в ADB files, которые кэш базы данных записей / исправлений.

Таблица содержания структуры

Эта страница описывает структуру DB2 файлов. Для получения списка существующих файлов DB2 и их содержание изучите категории DBC, Vanilla, Burning Crusade, Wrath of the Lich King, Cataclysm и Mists of Pandaria. Если Вы добавляете документацию для определенной категории, пожалуйста, добавьте правильные категории (так же заполнить правильно) также.

Структура

struct db2_header
{
  uint32_t magic;                                               // 'WDB2' для .db2 (database), 'WCH2' для .adb (cache)
  uint32_t record_count;
  uint32_t field_count;
  uint32_t record_size;
  uint32_t string_table_size;                                   // Строка блок всегда содержит по крайней мере один нулевой байт
  uint32_t table_hash;
  uint32_t build;
  uint32_t timestamp_last_written;                              // set to time(0); при написании в WowClientDB2_Base::Save()
  uint32_t min_id;
  uint32_t max_id;
  uint32_t locale;                                              // как показано в TextWowEnum
  uint32_t unk2;
};

template<typename record_type>
struct db2_file
{
  db2_header header;
  // static_assert (header.record_size == sizeof (record_type));

  if (header.max_id != 0)
  {
    int indices[header.max_id - header.min_id + 1];             // maps from id to row index in records[] below
    short string_lengths[header.max_id - header.min_id + 1];    // сумма длин всех строк в строке
  }
 
  record_type records[header.record_count]; 
  char string_block[header.string_block_size];
};

Блок последовательности

Эквивалент DBC версии. смотрите documentation there.

Локализация

DB2 записи могут содержать локализованные строки. В отличие от DBCs, a DB2 содержит только локализованные значения для (header.locale).

Источник — «http://wiki.ytdb.ru:89/index.php/DB2»
Личные инструменты