![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 6 Pomógł: 0 Dołączył: 28.10.2005 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Zastanawiałem się nad tym od dawna, ale temat wypłynął teraz, przy okazji rzeźbienia w SS. Głowę moją zajmuje zagadka jak zapisać numer wersji w jednej kolumnie bazy danych, ale tak, aby można było dane w niej sortować poprawnie i zgodnie z funkcją php: version_compare? Przeczytawszy Semantic Versioning zdecydowałem się na ograniczenie wartości do:
Kod major.minor.patch.release.index Zapis może być dowolny, byleby baza danych sortowała je poprawnie. Mam do dyspozycji gettery i settery, więc wartość w bazie może być mało czytelna, skrypty przerobią ją na czytelną. Pierwszym moim pomysłem było użycie pola typu decimal oraz zapis wersji np 1.2.3 w postaci 1.002003. Ponieważ wydanie może przyjąć wartość: dev < alpha < beta < rc < stable, a wartości te przy zwykłym sortowaniu (sort) nie będą w tej kolejności, można by je zamienić na wartości cyfrowe: 0 < 1 < 2 < 3 < 4. Wszystko pięknie, tylko czasami widuję że patch przyjmuje wartości o długości ponad trój cyfrowe. Pytanie, czy starczy jeśli zarezerwuję dla wartości: 7.13.666-rc.2 szablon decimal: Kod ###.########## 007.0130066632 bądź char: Kod ###.###.#####.#.# 007.013.00666.3.2 Jakieś podpowiedzi? |
|
|
![]() ![]() |
![]() |
Aktualny czas: 22.08.2025 - 11:50 |