Er zijn op dit moment twee manieren om min of meer veilig de data in de database te laden of aan te passen. Beide hebben voor en nadelen afhankelijk van de situatie. Optie 1 (zie hieronder) is een hack op de import en exportfunctie, optie 2 is gebruik maken van een sqlite database editor.
Voordat je wijziging doorvoert is het verstandig om een export te maken en deze veilig te stellen mocht er iets mis gaan.
1) in- en export functie gebruiken.
2De export functie doet niet anders dan een verzameling van SQL commando’s aanmaken met alle data daarin. Als de data in het exportfile wordt aangepast dan kan de data met de import functie worden geladen. Het is niet ingewikkeld maar het is handig als je iets enige SQL kennis hebt. Het voordeel van deze manier is dat de p1 monitor blijft draaien en dat je geen nieuwe data moet missen. Aanpak:
Maak een export vanuit de p1 monitor
Pak het export zip file uit zodat er een (onder Windows met de optie Extract All) in dit voorbeeld heet het file test.zip.
Open de uitgepakte folder ???\test\p1mon\export. Daar staan de volgende files in:
- historiexxxxx (de gas en e-waarde historie)
- finacieelxxxxx. (de financiële gegevens)
- 01_weer_historiexxxxx (weer historie)
- Configuratie (configuratie, het is beter deze niet te wijzigen tenzij je weet wat je doet)
- weerxxxxxx (huidige weer informatie)
Bekijk de bestanden om te zien wat je wil aanpassen, bestanden die je niet wil aanpassen kun je verwijderen. In dit voorbeeld ga ik ervan uit dat je alleen historiexxxxx (de gas en e-waarde historie) wil aanpassen. Dus alle andere bestanden kunnen dan weg.
Open het historie bestand met een tekst editor (write, notepad++) het maakt niet uit als het maar een platte tekst editor is MS Word kan ook maar dan moet je het bestand opslaan als ascii tekst bestand. Je mag alle regels in het bestand laten staan of alles weghalen. Het SQL commando “replace into e_history_min (TIMESTAMP…. “ Vervangt het bestaande record in de database, het kost dan alleen meer tijd bij de import.
In dit voorbeeld nemen we een regel en alle andere regels worden verwijderd:
Als je in deze regel de minuut waarde wil aanpassen va 9296.694 naar 8000.00 pas dit dan aan. Dit kun je net zo lang herhalen met extra records of met maar 1 record net wat je nodig hebt.
Pak de folder structuur weer in (maak er een zip file van) en importeer het bestand.
Maak een export vanuit de p1 monitor
Pak het export zip file uit zodat er een (onder Windows met de optie Extract All) in dit voorbeeld heet het file test.zip.
Open de uitgepakte folder ???\test\p1mon\export. Daar staan de volgende files in:
- historiexxxxx (de gas en e-waarde historie)
- finacieelxxxxx. (de financiële gegevens)
- 01_weer_historiexxxxx (weer historie)
- Configuratie (configuratie, het is beter deze niet te wijzigen tenzij je weet wat je doet)
- weerxxxxxx (huidige weer informatie)
Bekijk de bestanden om te zien wat je wil aanpassen, bestanden die je niet wil aanpassen kun je verwijderen. In dit voorbeeld ga ik ervan uit dat je alleen historiexxxxx (de gas en e-waarde historie) wil aanpassen. Dus alle andere bestanden kunnen dan weg.
Open het historie bestand met een tekst editor (write, notepad++) het maakt niet uit als het maar een platte tekst editor is MS Word kan ook maar dan moet je het bestand opslaan als ascii tekst bestand. Je mag alle regels in het bestand laten staan of alles weghalen. Het SQL commando “replace into e_history_min (TIMESTAMP…. “ Vervangt het bestaande record in de database, het kost dan alleen meer tijd bij de import.
In dit voorbeeld nemen we een regel en alle andere regels worden verwijderd:
Code: Selecteer alles
replace into e_history_min (TIMESTAMP, VERBR_KWH_181, VERBR_KWH_182,GELVR_KWH_281, GELVR_KWH_282, VERBR_KWH_X, GELVR_KWH_X,TARIEFCODE,ACT_VERBR_KW_170,ACT_GELVR_KW_270, VERBR_GAS_2421) values (‘2018-02-21 00:02:00′,’9296.694′,’9340.233′,’664.965′,’1756.033′,’0.00300000000061′,’0.0′,’D’,’0.21′,’0.0′,’0.0′);
Pak de folder structuur weer in (maak er een zip file van) en importeer het bestand.
beheerder forum
2) sqlite database editor
3Met de database editor zoals (http://sqlitebrowser.org/) kun je de via een eenvoudige gebruikersinterface de database inhoud bewerken. Echter om de data te kunnen bewerken moet de database niet door de P1 monitor worden aangepast.
- Eerst moet de P1 monitor worden gestopt en de rechten op het database bestand worden aangepast. In dit voorbeeld wordt de historie database gebruikt.
- Ga naar het setup menu -> bestanden -> data. Maakt het mogelijk op via samba/file share de bestanden te kopiëren naar je pc. Kopieer het bestand e_historie.db
- Log in op de P1 montor als p1mon (wachtwoord verandermij of nog beter je hebt het wachtwoord aangepast). Gebruik hiervoor putty.
- cd /p1mon/scripts
- ./p1mon.sh stop (duurt even)
- cd p1mon/mnt/ramdisk
- mv e_historie.db e_historie.db.old
- cd /p1mon/data
- cp e_historie.db e_historie.db.old (dit is een veiligheidskopie)
- chmod a+rw e_historie.db (dit is nodig om als de versie van de database op je pc is aangepast weer terug te kunnen schrijven).
- Open het e_historie.db bestand met sqlite database editor en pas dit aan zoals je wilt.
- Kopier het het e_historie.db terug naar de p1 via samba.
- Log in op p1 montor.
- cd /p1mon/scripts
- ./p1mon start
beheerder forum
Re: Aanpassen van de Sqlite database, handmatig aanpassen data
4Er is ook een CLI optie die een aantal database problemen kan oplossen. Je kunt deze vinden in de folder /p1mon/scripts aanroepen met ./P1DatabaseOptimizer -h. Deze tool wordt in de toekomst uitgebreid met meerder opties. Gebruik de tool alleen als je problemen ervaart.
beheerder forum