GeoGet

Complete geocaching solutions

User Tools

Site Tools


user:databaze

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
user:databaze [2020/12/27 11:55] mikromuser:databaze [2021/04/18 10:43] (current) – [Struktura databáze GeoGetu] gord
Line 28: Line 28:
  
 <WRAP round info> <WRAP round info>
-Upozornění: v nedaleké budoucnosti jsou plánovány velké změny ve struktuře databáze. Může tedy dojít k tomu, že dříve připravený SQL dotaz nebude pracovat správně v některé z příštích verzí databáze. (Verze databáze je uvedena ve vlastnostech databáze (**PRAGMA user_version**).+Upozornění: V některých případech můžbýt potřeba kontrolovat, zda databáze je opravdu GeoGetí databází. Aplikace, které je databáze určena, je nastavena ve vlastnostech databáze. SQL ''PRAGMA application_ID'' by měl vrátit hodnotu ''1845946112''
 +</WRAP> 
 + 
 +<WRAP round info> 
 +Upozornění: je vhodné kontrolovat si verzi databáze, zda plugin nebo aplikace pracuje se správnou databázovou strukturou. Může tedy dojít k tomu, že dříve připravený SQL dotaz nebude pracovat správně v některé z příštích verzí databáze. Verze databáze je uvedena ve vlastnostech databáze ''PRAGMA user_version''. Aktuální verze databáze je 3 (pro verzi GeoGetu 2.11).
 </WRAP> </WRAP>
  
Line 104: Line 108:
 | ::: | ''value'' | hodnota tagu | | ::: | ''value'' | hodnota tagu |
 | ::: | ''flag'' | rezervováno pro budoucí potřebu označování druhu tagu | | ::: | ''flag'' | rezervováno pro budoucí potřebu označování druhu tagu |
-| ''metadata'' | ''key'' || +| ''metadata''<wrap important> <sup>4)</sup></wrap> | ''key'' || 
-| ::: | ''name''jmáno uložené hodnoty |+| ::: | ''name''jméno uložené hodnoty |
 | ::: | ''value'' | vlastní hodnota | | ::: | ''value'' | vlastní hodnota |
 | ''waypoint'' | ''key'' || | ''waypoint'' | ''key'' ||
Line 146: Line 150:
  
 <wrap important> <sup>3)</sup></wrap> Zvláštní důležitost mají první 2 znaky, tzv. [[#prefix|Prefix]]. <wrap important> <sup>3)</sup></wrap> Zvláštní důležitost mají první 2 znaky, tzv. [[#prefix|Prefix]].
 +
 +<wrap important> <sup>4)</sup></wrap> tabulka ''metadata'' je obsahuje různé hodnoty jedinečné pro databázi. Je možné doplňovat i vlastní hodnoty, ale v tom případě je důležité věnovat zvláštní pozornost jménu proměnné. Dopočučené jméno je složené ve tvaru ''plugin.proměnná'', např. ''stator.gcczId''. Geoget používá následující proměnné (platné pro verzi 2.11)
 +
 +|create_application|aplikace a její verze, která databázi vytvořila|
 +|create_level|verze databáze, na jaké verzi byla databáze vytvořena. Aktuální verze databáze je dostupná přes funkce databáze, viz. SQL příkaz ''PRAGMA user_version;'' a poznámka na začátku této stránky|
 +|create_dt|datum a čas vytvoření databáze v numerickém tvaru|
 +|create_datetime|datum a čas vytvoření databáze ve tvaru YYYY-MM-DD hh:mm:ss.ssss|
 +|upgrade_application|aplikace a její verze, které databázi aktualizovala|
 +|upgrade_dt|datum a čas posledního povýšení databáze (číslo)|
 +|upgrade_datetime|datum a čas posledního povýšení databáze (string)|
 +|MyFindsTS|datum a čas posledního načítání logů přes API|
 +
 +
  
 ===== SQLite APPLICATION_ID ===== ===== SQLite APPLICATION_ID =====
Line 208: Line 225:
 ===== Přístup  TAGům ===== ===== Přístup  TAGům =====
 Protože se předpokládá, že většina hodnot tagů má mnohonásobné použití, není u keše použita (uložena) přímo hodnota (=dlouhý text), ale jen číslo, Protože se předpokládá, že většina hodnot tagů má mnohonásobné použití, není u keše použita (uložena) přímo hodnota (=dlouhý text), ale jen číslo,
-které ukazuje na ten konkretní dlouhý text. Místo opakujícího se dlouhého textu se tedy opakuje jen číslo. Úspora místa je ale vyvážena trochu komplikovanějším přístupem k hodnotám TAGů. Protože text není uložen přímo u keše, je potřeba "spolupráce" tří tabulek:+které ukazuje na ten konkrétní dlouhý text. Místo opakujícího se dlouhého textu se tedy opakuje jen číslo. Úspora místa je ale vyvážena trochu komplikovanějším přístupem k hodnotám TAGů. Protože text není uložen přímo u keše, je potřeba "spolupráce" tří tabulek:
  
-  * **geotagcategory** - seznam kategorií (''value''=text kategorie) a jejich čiselných hodnot (''key'')+  * **geotagcategory** - seznam kategorií (''value''=text kategorie) a jejich číselných hodnot (''key'')
   * **geotagvalue** - seznam hodnot tagů (''value''=text hodnoty), jejich číselných hodnot (''key'')   * **geotagvalue** - seznam hodnot tagů (''value''=text hodnoty), jejich číselných hodnot (''key'')
   * **geotag** - přidělená kategorie (''ptrkat'', obsahuje ''key'' kategorie) a hodnota tagu (''ptvalue'', obsahuje ''key'' hodnoty) k jednotlivé keši (''id'', obsahuje GC kód keše)   * **geotag** - přidělená kategorie (''ptrkat'', obsahuje ''key'' kategorie) a hodnota tagu (''ptvalue'', obsahuje ''key'' hodnoty) k jednotlivé keši (''id'', obsahuje GC kód keše)
user/databaze.1609066552.txt.gz · Last modified: 2020/12/27 11:55 by mikrom