12. Liite: Tietokannan skeema
Tärkeä
Varmuuskopioi aina .db-tiedostosi ennen tietokannan migraatioiden suorittamista.
12.1. Versio 1.0.0
Tietokannan versio 1.0.0 sisältää seuraavat taulut:
position: Tallentaa positiot sarakkeilla id (pääavain) ja state (position tila JSON-muodossa).
analysis: Tallentaa positioiden analyysit sarakkeilla id (pääavain), position_id (viiteavain tauluun position) ja data (analyysin tiedot JSON-muodossa).
comment: Tallentaa positioihin liittyvät kommentit sarakkeilla id (pääavain), position_id (viiteavain tauluun position) ja text (kommentin teksti).
metadata: Tallentaa tietokannan metatiedot sarakkeilla key (pääavain) ja value (avaimeen liittyvä arvo).
12.2. Versio 1.1.0
Tietokannan versio 1.1.0 lisää seuraavan taulun:
command_history: Tallentaa komentohistorian sarakkeilla id (pääavain), command (komennon teksti) ja timestamp (komennon suorituksen päivämäärä ja kellonaika).
Muut taulut pysyvät muuttumattomina versioon 1.0.0 verrattuna.
Migratoidaksesi tietokannan versiosta 1.0.0 versioon 1.1.0 suorita komento migrate_from_1_0_to_1_1 blunderDB:ssä.
12.3. Versio 1.2.0
Tietokannan versio 1.2.0 lisää seuraavan taulun:
filter_library: Tallentaa hakusuodattimet sarakkeilla id (pääavain), name (suodattimen nimi), command (suodattimeen liittyvä komento) ja edit_position (suodatinta tallennettaessa muokattu positio).
Muut taulut pysyvät muuttumattomina versioon 1.1.0 verrattuna.
Migratoidaksesi tietokannan versiosta 1.1.0 versioon 1.2.0 suorita komento migrate_from_1_1_to_1_2 blunderDB:ssä.
12.4. Versio 1.3.0
Tietokannan versio 1.3.0 lisää seuraavan taulun:
search_history: Tallentaa positiohakujen historian sarakkeilla id (pääavain), command (hakukomennon teksti), position (position tila haun hetkellä) ja timestamp (haun päivämäärä ja kellonaika).
Muut taulut pysyvät muuttumattomina versioon 1.2.0 verrattuna.
Migratoidaksesi tietokannan versiosta 1.2.0 versioon 1.3.0 suorita komento migrate_from_1_2_to_1_3 blunderDB:ssä.
12.5. Versio 1.4.0
Tietokannan versio 1.4.0 lisää seuraavat taulut otteluiden hallintaa varten:
match: Tallentaa tuodut ottelut sarakkeilla id (pääavain), player1_name, player2_name, event, location, round, match_length, match_date, import_date, file_path, game_count ja match_hash (tiiviste duplikaattien tunnistamiseen).
game: Tallentaa ottelun pelit sarakkeilla id (pääavain), match_id (viiteavain tauluun match), game_number, initial_score_1, initial_score_2, winner, points_won ja move_count.
move: Tallentaa pelin siirrot sarakkeilla id (pääavain), game_id (viiteavain tauluun game), move_number, move_type, position_id (viiteavain tauluun position), player, dice_1, dice_2, checker_move ja cube_action.
move_analysis: Tallentaa kunkin siirron analyysin sarakkeilla id (pääavain), move_id (viiteavain tauluun move), analysis_type, depth, equity, equity_error, win_rate, gammon_rate, backgammon_rate, opponent_win_rate, opponent_gammon_rate ja opponent_backgammon_rate.
Migraatio versiosta 1.3.0 versioon 1.4.0 tapahtuu automaattisesti tietokantaa avattaessa.
12.6. Versio 1.5.0
Tietokannan versio 1.5.0 lisää seuraavat taulut kokoelmien hallintaa varten:
collection: Tallentaa positiokokoelmat sarakkeilla id (pääavain), name, description, sort_order, created_at ja updated_at.
collection_position: Liitostaulu, joka yhdistää positiot kokoelmiin sarakkeilla id (pääavain), collection_id (viiteavain tauluun collection), position_id (viiteavain tauluun position), sort_order ja added_at. Pari (collection_id, position_id) on yksilöllinen.
Migraatio versiosta 1.4.0 versioon 1.5.0 tapahtuu automaattisesti tietokantaa avattaessa.
12.7. Versio 1.6.0
Tietokannan versio 1.6.0 lisää seuraavan taulun turnausten hallintaa varten:
tournament: Tallentaa turnaukset sarakkeilla id (pääavain), name, date, location, sort_order, created_at ja updated_at.
Lisätty sarake tournament_id (viiteavain tauluun tournament) tauluun match ottelun liittämiseksi turnaukseen.
Migraatio versiosta 1.5.0 versioon 1.6.0 tapahtuu automaattisesti tietokantaa avattaessa.
12.8. Versio 1.7.0
Tietokannan versio 1.7.0 lisää seuraavan sarakkeen:
Lisätty sarake last_visited_position tauluun match kussakin ottelussa viimeksi vieraillun position muistamiseksi.
Migraatio versiosta 1.6.0 versioon 1.7.0 tapahtuu automaattisesti tietokantaa avattaessa.
Muista
Versiosta 0.10.0 lähtien kaikki tietokannan migraatiot suoritetaan automaattisesti tietokantatiedostoa avattaessa.