HelloTo follow up on the discussion https://groups.google.com/u/2/g/weewx-user/c/sl1zgrU0cd0 below, I applied the procedure https://forums.raspberrypi.com/viewtopic.php?t=262963#p1608493Weewx resumed life but with a constant delay not arranging and with a "hole" of a week from February 28. I tried "Wee_database-Rebuild-Daily" and there, it is no longer data. I found this in the logMar 10 09:00:24 PiMeteo weewx[14479] DEBUG weewx.drivers.vantage: Retrieving 513 page(s); starting index= 0
Mar 10 09:00:24 PiMeteo weewx[14479] DEBUG weewx.drivers.vantage: DMPAFT complete: page timestamp 2003-12-03 13:45:00 CET (1070455500) less than final timestamp 2023-03-08 15:20:00 CET (1678285200)How can you fix this?Where to modify the final timestamp?Merci--
You received this message because you are subscribed to the Google Groups "weewx-user" group.
To unsubscribe from this group and stop receiving emails from it, send an email to weewx-user+...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/weewx-user/4a67f8f9-c3e0-4e15-aaf4-63f7a5001230n%40googlegroups.com.
sudo apt-get install sqlite3
sqlite3 /var/lib/weewx/weewx.sdbsqlite> select dateTime from archive where dateTime isnull;sqlite> .quit
To view this discussion on the web visit https://groups.google.com/d/msgid/weewx-user/3a30f04c-a564-4f89-9594-8e417bfb8ed6n%40googlegroups.com.
sqlite3 /var/lib/weewx/weewx.sdbsqlite> .schemasqlite> .quit
Ok, not null values
Le 10-03-23 à 14:09, Tom Keffer a écrit :
Yes, I added a few columns that I update daily. So far, this was not a problem
CREATE TABLE archive
(`dateTime` INTEGER NOT NULL UNIQUE PRIMARY KEY, `usUnits`
INTEGER NOT NULL, `interval` INTEGER NOT NULL, `altimeter` REAL,
`appTemp` REAL, `appTemp1` REAL, `barometer` REAL,
`batteryStatus1` REAL, `batteryStatus2` REAL, `batteryStatus3`
REAL, `batteryStatus4` REAL, `batteryStatus5` REAL,
`batteryStatus6` REAL, `batteryStatus7` REAL, `batteryStatus8`
REAL, `cloudbase` REAL, `co` REAL, `co2` REAL,
`consBatteryVoltage` REAL, `dewpoint` REAL, `dewpoint1` REAL,
`ET` REAL, `extraHumid1` REAL, `extraHumid2` REAL, `extraHumid3`
REAL, `extraHumid4` REAL, `extraHumid5` REAL, `extraHumid6`
REAL, `extraHumid7` REAL, `extraHumid8` REAL, `extraTemp1` REAL,
`extraTemp2` REAL, `extraTemp3` REAL, `extraTemp4` REAL,
`extraTemp5` REAL, `extraTemp6` REAL, `extraTemp7` REAL,
`extraTemp8` REAL, `forecast` REAL, `hail` REAL,
`hailBatteryStatus` REAL, `hailRate` REAL, `heatindex` REAL,
`heatindex1` REAL, `heatingTemp` REAL, `heatingVoltage` REAL,
`humidex` REAL, `humidex1` REAL, `inDewpoint` REAL, `inHumidity`
REAL, `inTemp` REAL, `inTempBatteryStatus` REAL, `leafTemp1`
REAL, `leafTemp2` REAL, `leafWet1` REAL, `leafWet2` REAL,
`lightning_distance` REAL, `lightning_disturber_count` REAL,
`lightning_energy` REAL, `lightning_noise_count` REAL,
`lightning_strike_count` REAL, `luminosity` REAL, `maxSolarRad`
REAL, `nh3` REAL, `no2` REAL, `noise` REAL, `o3` REAL,
`outHumidity` REAL, `outTemp` REAL, `outTempBatteryStatus` REAL,
`pb` REAL, `pm10_0` REAL, `pm1_0` REAL, `pm2_5` REAL, `pressure`
REAL, `radiation` REAL, `rain` REAL, `rainBatteryStatus` REAL,
`rainRate` REAL, `referenceVoltage` REAL, `rxCheckPercent` REAL,
`signal1` REAL, `signal2` REAL, `signal3` REAL, `signal4` REAL,
`signal5` REAL, `signal6` REAL, `signal7` REAL, `signal8` REAL,
`snow` REAL, `snowBatteryStatus` REAL, `snowDepth` REAL,
`snowMoisture` REAL, `snowRate` REAL, `so2` REAL, `soilMoist1`
REAL, `soilMoist2` REAL, `soilMoist3` REAL, `soilMoist4` REAL,
`soilTemp1` REAL, `soilTemp2` REAL, `soilTemp3` REAL,
`soilTemp4` REAL, `supplyVoltage` REAL, `txBatteryStatus` REAL,
`UV` REAL, `uvBatteryStatus` REAL, `windBatteryStatus` REAL,
`windchill` REAL, `windDir` REAL, `windGust` REAL, `windGustDir`
REAL, `windrun` REAL, `windSpeed` REAL);
CREATE TABLE archive_day_altimeter (dateTime INTEGER NOT NULL
UNIQUE PRIMARY KEY, min REAL, mintime INTEGER, max REAL, maxtime
INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime INTEGER);
CREATE TABLE archive_day_appTemp (dateTime INTEGER NOT NULL
UNIQUE PRIMARY KEY, min REAL, mintime INTEGER, max REAL, maxtime
INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime INTEGER);
CREATE TABLE archive_day_appTemp1 (dateTime INTEGER NOT NULL
UNIQUE PRIMARY KEY, min REAL, mintime INTEGER, max REAL, maxtime
INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime INTEGER);
CREATE TABLE archive_day_barometer (dateTime INTEGER NOT NULL
UNIQUE PRIMARY KEY, min REAL, mintime INTEGER, max REAL, maxtime
INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime INTEGER);
CREATE TABLE archive_day_batteryStatus1 (dateTime INTEGER NOT
NULL UNIQUE PRIMARY KEY, min REAL, mintime INTEGER, max REAL,
maxtime INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime
INTEGER);
CREATE TABLE archive_day_batteryStatus2 (dateTime INTEGER NOT
NULL UNIQUE PRIMARY KEY, min REAL, mintime INTEGER, max REAL,
maxtime INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime
INTEGER);
CREATE TABLE archive_day_batteryStatus3 (dateTime INTEGER NOT
NULL UNIQUE PRIMARY KEY, min REAL, mintime INTEGER, max REAL,
maxtime INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime
INTEGER);
CREATE TABLE archive_day_batteryStatus4 (dateTime INTEGER NOT
NULL UNIQUE PRIMARY KEY, min REAL, mintime INTEGER, max REAL,
maxtime INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime
INTEGER);
CREATE TABLE archive_day_batteryStatus5 (dateTime INTEGER NOT
NULL UNIQUE PRIMARY KEY, min REAL, mintime INTEGER, max REAL,
maxtime INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime
INTEGER);
CREATE TABLE archive_day_batteryStatus6 (dateTime INTEGER NOT
NULL UNIQUE PRIMARY KEY, min REAL, mintime INTEGER, max REAL,
maxtime INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime
INTEGER);
CREATE TABLE archive_day_batteryStatus7 (dateTime INTEGER NOT
NULL UNIQUE PRIMARY KEY, min REAL, mintime INTEGER, max REAL,
maxtime INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime
INTEGER);
CREATE TABLE archive_day_batteryStatus8 (dateTime INTEGER NOT
NULL UNIQUE PRIMARY KEY, min REAL, mintime INTEGER, max REAL,
maxtime INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime
INTEGER);
CREATE TABLE archive_day_cloudbase (dateTime INTEGER NOT NULL
UNIQUE PRIMARY KEY, min REAL, mintime INTEGER, max REAL, maxtime
INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime INTEGER);
CREATE TABLE archive_day_co (dateTime INTEGER NOT NULL UNIQUE
PRIMARY KEY, min REAL, mintime INTEGER, max REAL, maxtime
INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime INTEGER);
CREATE TABLE archive_day_co2 (dateTime INTEGER NOT NULL UNIQUE
PRIMARY KEY, min REAL, mintime INTEGER, max REAL, maxtime
INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime INTEGER);
CREATE TABLE archive_day_consBatteryVoltage (dateTime INTEGER
NOT NULL UNIQUE PRIMARY KEY, min REAL, mintime INTEGER, max
REAL, maxtime INTEGER, sum REAL, count INTEGER, wsum REAL,
sumtime INTEGER);
CREATE TABLE archive_day_dewpoint (dateTime INTEGER NOT NULL
UNIQUE PRIMARY KEY, min REAL, mintime INTEGER, max REAL, maxtime
INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime INTEGER);
CREATE TABLE archive_day_dewpoint1 (dateTime INTEGER NOT NULL
UNIQUE PRIMARY KEY, min REAL, mintime INTEGER, max REAL, maxtime
INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime INTEGER);
CREATE TABLE archive_day_ET (dateTime INTEGER NOT NULL UNIQUE
PRIMARY KEY, min REAL, mintime INTEGER, max REAL, maxtime
INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime INTEGER);
CREATE TABLE archive_day_extraHumid1 (dateTime INTEGER NOT NULL
UNIQUE PRIMARY KEY, min REAL, mintime INTEGER, max REAL, maxtime
INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime INTEGER);
CREATE TABLE archive_day_extraHumid2 (dateTime INTEGER NOT NULL
UNIQUE PRIMARY KEY, min REAL, mintime INTEGER, max REAL, maxtime
INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime INTEGER);
CREATE TABLE archive_day_extraHumid3 (dateTime INTEGER NOT NULL
UNIQUE PRIMARY KEY, min REAL, mintime INTEGER, max REAL, maxtime
INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime INTEGER);
CREATE TABLE archive_day_extraHumid4 (dateTime INTEGER NOT NULL
UNIQUE PRIMARY KEY, min REAL, mintime INTEGER, max REAL, maxtime
INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime INTEGER);
CREATE TABLE archive_day_extraHumid5 (dateTime INTEGER NOT NULL
UNIQUE PRIMARY KEY, min REAL, mintime INTEGER, max REAL, maxtime
INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime INTEGER);
CREATE TABLE archive_day_extraHumid6 (dateTime INTEGER NOT NULL
UNIQUE PRIMARY KEY, min REAL, mintime INTEGER, max REAL, maxtime
INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime INTEGER);
CREATE TABLE archive_day_extraHumid7 (dateTime INTEGER NOT NULL
UNIQUE PRIMARY KEY, min REAL, mintime INTEGER, max REAL, maxtime
INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime INTEGER);
CREATE TABLE archive_day_extraHumid8 (dateTime INTEGER NOT NULL
UNIQUE PRIMARY KEY, min REAL, mintime INTEGER, max REAL, maxtime
INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime INTEGER);
CREATE TABLE archive_day_extraTemp1 (dateTime INTEGER NOT NULL
UNIQUE PRIMARY KEY, min REAL, mintime INTEGER, max REAL, maxtime
INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime INTEGER);
CREATE TABLE archive_day_extraTemp2 (dateTime INTEGER NOT NULL
UNIQUE PRIMARY KEY, min REAL, mintime INTEGER, max REAL, maxtime
INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime INTEGER);
CREATE TABLE archive_day_extraTemp3 (dateTime INTEGER NOT NULL
UNIQUE PRIMARY KEY, min REAL, mintime INTEGER, max REAL, maxtime
INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime INTEGER);
CREATE TABLE archive_day_extraTemp4 (dateTime INTEGER NOT NULL
UNIQUE PRIMARY KEY, min REAL, mintime INTEGER, max REAL, maxtime
INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime INTEGER);
CREATE TABLE archive_day_extraTemp5 (dateTime INTEGER NOT NULL
UNIQUE PRIMARY KEY, min REAL, mintime INTEGER, max REAL, maxtime
INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime INTEGER);
CREATE TABLE archive_day_extraTemp6 (dateTime INTEGER NOT NULL
UNIQUE PRIMARY KEY, min REAL, mintime INTEGER, max REAL, maxtime
INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime INTEGER);
CREATE TABLE archive_day_extraTemp7 (dateTime INTEGER NOT NULL
UNIQUE PRIMARY KEY, min REAL, mintime INTEGER, max REAL, maxtime
INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime INTEGER);
CREATE TABLE archive_day_extraTemp8 (dateTime INTEGER NOT NULL
UNIQUE PRIMARY KEY, min REAL, mintime INTEGER, max REAL, maxtime
INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime INTEGER);
CREATE TABLE archive_day_forecast (dateTime INTEGER NOT NULL
UNIQUE PRIMARY KEY, min REAL, mintime INTEGER, max REAL, maxtime
INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime INTEGER);
CREATE TABLE archive_day_hail (dateTime INTEGER NOT NULL UNIQUE
PRIMARY KEY, min REAL, mintime INTEGER, max REAL, maxtime
INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime INTEGER);
CREATE TABLE archive_day_hailBatteryStatus (dateTime INTEGER NOT
NULL UNIQUE PRIMARY KEY, min REAL, mintime INTEGER, max REAL,
maxtime INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime
INTEGER);
CREATE TABLE archive_day_hailRate (dateTime INTEGER NOT NULL
UNIQUE PRIMARY KEY, min REAL, mintime INTEGER, max REAL, maxtime
INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime INTEGER);
CREATE TABLE archive_day_heatindex (dateTime INTEGER NOT NULL
UNIQUE PRIMARY KEY, min REAL, mintime INTEGER, max REAL, maxtime
INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime INTEGER);
CREATE TABLE archive_day_heatindex1 (dateTime INTEGER NOT NULL
UNIQUE PRIMARY KEY, min REAL, mintime INTEGER, max REAL, maxtime
INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime INTEGER);
CREATE TABLE archive_day_heatingTemp (dateTime INTEGER NOT NULL
UNIQUE PRIMARY KEY, min REAL, mintime INTEGER, max REAL, maxtime
INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime INTEGER);
CREATE TABLE archive_day_heatingVoltage (dateTime INTEGER NOT
NULL UNIQUE PRIMARY KEY, min REAL, mintime INTEGER, max REAL,
maxtime INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime
INTEGER);
CREATE TABLE archive_day_humidex (dateTime INTEGER NOT NULL
UNIQUE PRIMARY KEY, min REAL, mintime INTEGER, max REAL, maxtime
INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime INTEGER);
CREATE TABLE archive_day_humidex1 (dateTime INTEGER NOT NULL
UNIQUE PRIMARY KEY, min REAL, mintime INTEGER, max REAL, maxtime
INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime INTEGER);
CREATE TABLE archive_day_inDewpoint (dateTime INTEGER NOT NULL
UNIQUE PRIMARY KEY, min REAL, mintime INTEGER, max REAL, maxtime
INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime INTEGER);
CREATE TABLE archive_day_inHumidity (dateTime INTEGER NOT NULL
UNIQUE PRIMARY KEY, min REAL, mintime INTEGER, max REAL, maxtime
INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime INTEGER);
CREATE TABLE archive_day_inTemp (dateTime INTEGER NOT NULL
UNIQUE PRIMARY KEY, min REAL, mintime INTEGER, max REAL, maxtime
INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime INTEGER);
CREATE TABLE archive_day_inTempBatteryStatus (dateTime INTEGER
NOT NULL UNIQUE PRIMARY KEY, min REAL, mintime INTEGER, max
REAL, maxtime INTEGER, sum REAL, count INTEGER, wsum REAL,
sumtime INTEGER);
CREATE TABLE archive_day_leafTemp1 (dateTime INTEGER NOT NULL
UNIQUE PRIMARY KEY, min REAL, mintime INTEGER, max REAL, maxtime
INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime INTEGER);
CREATE TABLE archive_day_leafTemp2 (dateTime INTEGER NOT NULL
UNIQUE PRIMARY KEY, min REAL, mintime INTEGER, max REAL, maxtime
INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime INTEGER);
CREATE TABLE archive_day_leafWet1 (dateTime INTEGER NOT NULL
UNIQUE PRIMARY KEY, min REAL, mintime INTEGER, max REAL, maxtime
INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime INTEGER);
CREATE TABLE archive_day_leafWet2 (dateTime INTEGER NOT NULL
UNIQUE PRIMARY KEY, min REAL, mintime INTEGER, max REAL, maxtime
INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime INTEGER);
CREATE TABLE archive_day_lightning_distance (dateTime INTEGER
NOT NULL UNIQUE PRIMARY KEY, min REAL, mintime INTEGER, max
REAL, maxtime INTEGER, sum REAL, count INTEGER, wsum REAL,
sumtime INTEGER);
CREATE TABLE archive_day_lightning_disturber_count (dateTime
INTEGER NOT NULL UNIQUE PRIMARY KEY, min REAL, mintime INTEGER,
max REAL, maxtime INTEGER, sum REAL, count INTEGER, wsum REAL,
sumtime INTEGER);
CREATE TABLE archive_day_lightning_energy (dateTime INTEGER NOT
NULL UNIQUE PRIMARY KEY, min REAL, mintime INTEGER, max REAL,
maxtime INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime
INTEGER);
CREATE TABLE archive_day_lightning_noise_count (dateTime INTEGER
NOT NULL UNIQUE PRIMARY KEY, min REAL, mintime INTEGER, max
REAL, maxtime INTEGER, sum REAL, count INTEGER, wsum REAL,
sumtime INTEGER);
CREATE TABLE archive_day_lightning_strike_count (dateTime
INTEGER NOT NULL UNIQUE PRIMARY KEY, min REAL, mintime INTEGER,
max REAL, maxtime INTEGER, sum REAL, count INTEGER, wsum REAL,
sumtime INTEGER);
CREATE TABLE archive_day_luminosity (dateTime INTEGER NOT NULL
UNIQUE PRIMARY KEY, min REAL, mintime INTEGER, max REAL, maxtime
INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime INTEGER);
CREATE TABLE archive_day_maxSolarRad (dateTime INTEGER NOT NULL
UNIQUE PRIMARY KEY, min REAL, mintime INTEGER, max REAL, maxtime
INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime INTEGER);
CREATE TABLE archive_day_nh3 (dateTime INTEGER NOT NULL UNIQUE
PRIMARY KEY, min REAL, mintime INTEGER, max REAL, maxtime
INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime INTEGER);
CREATE TABLE archive_day_no2 (dateTime INTEGER NOT NULL UNIQUE
PRIMARY KEY, min REAL, mintime INTEGER, max REAL, maxtime
INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime INTEGER);
CREATE TABLE archive_day_noise (dateTime INTEGER NOT NULL UNIQUE
PRIMARY KEY, min REAL, mintime INTEGER, max REAL, maxtime
INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime INTEGER);
CREATE TABLE archive_day_o3 (dateTime INTEGER NOT NULL UNIQUE
PRIMARY KEY, min REAL, mintime INTEGER, max REAL, maxtime
INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime INTEGER);
CREATE TABLE archive_day_outHumidity (dateTime INTEGER NOT NULL
UNIQUE PRIMARY KEY, min REAL, mintime INTEGER, max REAL, maxtime
INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime INTEGER);
CREATE TABLE archive_day_outTemp (dateTime INTEGER NOT NULL
UNIQUE PRIMARY KEY, min REAL, mintime INTEGER, max REAL, maxtime
INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime INTEGER);
CREATE TABLE archive_day_outTempBatteryStatus (dateTime INTEGER
NOT NULL UNIQUE PRIMARY KEY, min REAL, mintime INTEGER, max
REAL, maxtime INTEGER, sum REAL, count INTEGER, wsum REAL,
sumtime INTEGER);
CREATE TABLE archive_day_pb (dateTime INTEGER NOT NULL UNIQUE
PRIMARY KEY, min REAL, mintime INTEGER, max REAL, maxtime
INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime INTEGER);
CREATE TABLE archive_day_pm10_0 (dateTime INTEGER NOT NULL
UNIQUE PRIMARY KEY, min REAL, mintime INTEGER, max REAL, maxtime
INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime INTEGER);
CREATE TABLE archive_day_pm1_0 (dateTime INTEGER NOT NULL UNIQUE
PRIMARY KEY, min REAL, mintime INTEGER, max REAL, maxtime
INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime INTEGER);
CREATE TABLE archive_day_pm2_5 (dateTime INTEGER NOT NULL UNIQUE
PRIMARY KEY, min REAL, mintime INTEGER, max REAL, maxtime
INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime INTEGER);
CREATE TABLE archive_day_pressure (dateTime INTEGER NOT NULL
UNIQUE PRIMARY KEY, min REAL, mintime INTEGER, max REAL, maxtime
INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime INTEGER);
CREATE TABLE archive_day_radiation (dateTime INTEGER NOT NULL
UNIQUE PRIMARY KEY, min REAL, mintime INTEGER, max REAL, maxtime
INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime INTEGER);
CREATE TABLE archive_day_rain (dateTime INTEGER NOT NULL UNIQUE
PRIMARY KEY, min REAL, mintime INTEGER, max REAL, maxtime
INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime INTEGER);
CREATE TABLE archive_day_rainBatteryStatus (dateTime INTEGER NOT
NULL UNIQUE PRIMARY KEY, min REAL, mintime INTEGER, max REAL,
maxtime INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime
INTEGER);
CREATE TABLE archive_day_rainRate (dateTime INTEGER NOT NULL
UNIQUE PRIMARY KEY, min REAL, mintime INTEGER, max REAL, maxtime
INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime INTEGER);
CREATE TABLE archive_day_referenceVoltage (dateTime INTEGER NOT
NULL UNIQUE PRIMARY KEY, min REAL, mintime INTEGER, max REAL,
maxtime INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime
INTEGER);
CREATE TABLE archive_day_rxCheckPercent (dateTime INTEGER NOT
NULL UNIQUE PRIMARY KEY, min REAL, mintime INTEGER, max REAL,
maxtime INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime
INTEGER);
CREATE TABLE archive_day_signal1 (dateTime INTEGER NOT NULL
UNIQUE PRIMARY KEY, min REAL, mintime INTEGER, max REAL, maxtime
INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime INTEGER);
CREATE TABLE archive_day_signal2 (dateTime INTEGER NOT NULL
UNIQUE PRIMARY KEY, min REAL, mintime INTEGER, max REAL, maxtime
INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime INTEGER);
CREATE TABLE archive_day_signal3 (dateTime INTEGER NOT NULL
UNIQUE PRIMARY KEY, min REAL, mintime INTEGER, max REAL, maxtime
INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime INTEGER);
CREATE TABLE archive_day_signal4 (dateTime INTEGER NOT NULL
UNIQUE PRIMARY KEY, min REAL, mintime INTEGER, max REAL, maxtime
INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime INTEGER);
CREATE TABLE archive_day_signal5 (dateTime INTEGER NOT NULL
UNIQUE PRIMARY KEY, min REAL, mintime INTEGER, max REAL, maxtime
INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime INTEGER);
CREATE TABLE archive_day_signal6 (dateTime INTEGER NOT NULL
UNIQUE PRIMARY KEY, min REAL, mintime INTEGER, max REAL, maxtime
INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime INTEGER);
CREATE TABLE archive_day_signal7 (dateTime INTEGER NOT NULL
UNIQUE PRIMARY KEY, min REAL, mintime INTEGER, max REAL, maxtime
INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime INTEGER);
CREATE TABLE archive_day_signal8 (dateTime INTEGER NOT NULL
UNIQUE PRIMARY KEY, min REAL, mintime INTEGER, max REAL, maxtime
INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime INTEGER);
CREATE TABLE archive_day_snow (dateTime INTEGER NOT NULL UNIQUE
PRIMARY KEY, min REAL, mintime INTEGER, max REAL, maxtime
INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime INTEGER);
CREATE TABLE archive_day_snowBatteryStatus (dateTime INTEGER NOT
NULL UNIQUE PRIMARY KEY, min REAL, mintime INTEGER, max REAL,
maxtime INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime
INTEGER);
CREATE TABLE archive_day_snowDepth (dateTime INTEGER NOT NULL
UNIQUE PRIMARY KEY, min REAL, mintime INTEGER, max REAL, maxtime
INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime INTEGER);
CREATE TABLE archive_day_snowMoisture (dateTime INTEGER NOT NULL
UNIQUE PRIMARY KEY, min REAL, mintime INTEGER, max REAL, maxtime
INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime INTEGER);
CREATE TABLE archive_day_snowRate (dateTime INTEGER NOT NULL
UNIQUE PRIMARY KEY, min REAL, mintime INTEGER, max REAL, maxtime
INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime INTEGER);
CREATE TABLE archive_day_so2 (dateTime INTEGER NOT NULL UNIQUE
PRIMARY KEY, min REAL, mintime INTEGER, max REAL, maxtime
INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime INTEGER);
CREATE TABLE archive_day_soilMoist1 (dateTime INTEGER NOT NULL
UNIQUE PRIMARY KEY, min REAL, mintime INTEGER, max REAL, maxtime
INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime INTEGER);
CREATE TABLE archive_day_soilMoist2 (dateTime INTEGER NOT NULL
UNIQUE PRIMARY KEY, min REAL, mintime INTEGER, max REAL, maxtime
INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime INTEGER);
CREATE TABLE archive_day_soilMoist3 (dateTime INTEGER NOT NULL
UNIQUE PRIMARY KEY, min REAL, mintime INTEGER, max REAL, maxtime
INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime INTEGER);
CREATE TABLE archive_day_soilMoist4 (dateTime INTEGER NOT NULL
UNIQUE PRIMARY KEY, min REAL, mintime INTEGER, max REAL, maxtime
INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime INTEGER);
CREATE TABLE archive_day_soilTemp1 (dateTime INTEGER NOT NULL
UNIQUE PRIMARY KEY, min REAL, mintime INTEGER, max REAL, maxtime
INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime INTEGER);
CREATE TABLE archive_day_soilTemp2 (dateTime INTEGER NOT NULL
UNIQUE PRIMARY KEY, min REAL, mintime INTEGER, max REAL, maxtime
INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime INTEGER);
CREATE TABLE archive_day_soilTemp3 (dateTime INTEGER NOT NULL
UNIQUE PRIMARY KEY, min REAL, mintime INTEGER, max REAL, maxtime
INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime INTEGER);
CREATE TABLE archive_day_soilTemp4 (dateTime INTEGER NOT NULL
UNIQUE PRIMARY KEY, min REAL, mintime INTEGER, max REAL, maxtime
INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime INTEGER);
CREATE TABLE archive_day_supplyVoltage (dateTime INTEGER NOT
NULL UNIQUE PRIMARY KEY, min REAL, mintime INTEGER, max REAL,
maxtime INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime
INTEGER);
CREATE TABLE archive_day_txBatteryStatus (dateTime INTEGER NOT
NULL UNIQUE PRIMARY KEY, min REAL, mintime INTEGER, max REAL,
maxtime INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime
INTEGER);
CREATE TABLE archive_day_UV (dateTime INTEGER NOT NULL UNIQUE
PRIMARY KEY, min REAL, mintime INTEGER, max REAL, maxtime
INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime INTEGER);
CREATE TABLE archive_day_uvBatteryStatus (dateTime INTEGER NOT
NULL UNIQUE PRIMARY KEY, min REAL, mintime INTEGER, max REAL,
maxtime INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime
INTEGER);
CREATE TABLE archive_day_windBatteryStatus (dateTime INTEGER NOT
NULL UNIQUE PRIMARY KEY, min REAL, mintime INTEGER, max REAL,
maxtime INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime
INTEGER);
CREATE TABLE archive_day_windchill (dateTime INTEGER NOT NULL
UNIQUE PRIMARY KEY, min REAL, mintime INTEGER, max REAL, maxtime
INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime INTEGER);
CREATE TABLE archive_day_windDir (dateTime INTEGER NOT NULL
UNIQUE PRIMARY KEY, min REAL, mintime INTEGER, max REAL, maxtime
INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime INTEGER);
CREATE TABLE archive_day_windGust (dateTime INTEGER NOT NULL
UNIQUE PRIMARY KEY, min REAL, mintime INTEGER, max REAL, maxtime
INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime INTEGER);
CREATE TABLE archive_day_windGustDir (dateTime INTEGER NOT NULL
UNIQUE PRIMARY KEY, min REAL, mintime INTEGER, max REAL, maxtime
INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime INTEGER);
CREATE TABLE archive_day_windrun (dateTime INTEGER NOT NULL
UNIQUE PRIMARY KEY, min REAL, mintime INTEGER, max REAL, maxtime
INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime INTEGER);
CREATE TABLE archive_day_windSpeed (dateTime INTEGER NOT NULL
UNIQUE PRIMARY KEY, min REAL, mintime INTEGER, max REAL, maxtime
INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime INTEGER);
CREATE TABLE archive_day_wind (dateTime INTEGER NOT NULL UNIQUE
PRIMARY KEY, min REAL, mintime INTEGER, max REAL, maxtime
INTEGER, sum REAL, count INTEGER, wsum REAL, sumtime INTEGER,
max_dir REAL, xsum REAL, ysum REAL, dirsumtime INTEGER,
squaresum REAL, wsquaresum REAL);
CREATE TABLE archive_day__metadata (name CHAR(20) NOT NULL
UNIQUE PRIMARY KEY, value TEXT);
The base is connected with MS-ACCESS
(one of my specialties) and I exploit some data for my energy
management (I was 0also energy manager)
# -*- coding: utf-8
-*-
import mysql.connector
from datetime import datetime, timedelta
# script éxécuté une fois par jour (à 00:07:30 ?)
# version du 30/05/2022 (a)
db = mysql.connector.connect(
host="localhost",
user="weewx",
password="weewx",
database="weewx"
)
cur = db.cursor()
# -1- -1- -1- -1- -1- -1- -1- -1- -1- -1-
-1- -1- -1- -1-
# mise à jour du champ 'date_jour' dans la table 'archive' comme
suit :
# transforme le timestamp 'archive.dateTime' en une date (sans
hh:mm:ss)
# pour le placer dans le chanp 'date_jour' qui servira par après
à calculer les valeurs quotidiennes
sql="SELECT archive.dateTime FROM archive WHERE
(((archive.date_jour) Is Null));"
cur.execute(sql)
x = cur.fetchall()
i = 0
print("Mise à jour dates dans la table archive")
for l in x:
i+=1
DateWx =datetime.fromtimestamp(l[0])
DateWx =datetime.date(DateWx)
sql="UPDATE archive SET archive.date_jour = %s WHERE
(((archive.dateTime)=%s));"
value=(DateWx, l[0])
try:
# Executing the SQL command
cur.execute(sql, value)
# Commit your changes in the database
db.commit()
i += cur.rowcount
print(l[0], end="\t")
print(DateWx)
except:
# Rolling back in case of error
db.rollback()
print("Nbre de ligne(s) mise(s) à jour : " + str(i) )
# -2- -2- -2- -2- -2- -2- -2- -2- -2- -2-
-2- -2- -2- -2-
# mise à jour de la table 't_quotidien' avec les valeurs
quotidiennes de la table archive
# 2-1 La dernière date de 't_quotidien'
sql="SELECT Max(t_quotidien.q_date) AS X FROM t_quotidien;"
cur.execute(sql)
x = cur.fetchone()
derDateQuot = x[0]
print("derDateQuot =", end =" ")
print (derDateQuot )
derDateQuot+= timedelta(days=1) # on commence après la dernière
date !
# 2-2 la dernière 'date_jour' de 'archive'
sql="SELECT Max(archive.date_jour) AS X FROM archive;"
cur.execute(sql)
x = cur.fetchone()
derDateArch = x[0]
# comme c'est théoriquement le jour en cours, on recule à la
veille
print("dernière date archive trouvée : ", end = ' ')
print(derDateArch)
derDateArch -= timedelta(days=1)
print("on termine la veille : ", end = " ")
print(derDateArch)
# 2-3 Boucle entre derDateQuot et derDateArch, insertion des
enregistrements
delta=derDateArch-derDateQuot
nbreJours=delta.days + 1
print(nbreJours, end = ' ')
print("jour(s) à calculer")
for i in range(nbreJours):
dateBoucle = derDateQuot+timedelta(days=i)
print(dateBoucle, end = ' ')
sql="SELECT Avg(archive.outTemp) AS MoyenneDeoutTemp,
Max(archive.outTemp) AS MaxDeoutTemp1, Min(archive.outTemp) AS
MinDeoutTemp, Avg(archive.outHumidity) AS MoyenneDeoutHumidity,
Avg(archive.pressure) AS MoyenneDepressure, Sum(archive.rain) AS
SommeDerain, Max(archive.rainRate) AS MaxDerainRate "
sql += " FROM archive GROUP BY archive.date_jour "
sql += "HAVING archive.date_jour='"
sql += str(dateBoucle) + "';"
cur.execute(sql)
x = cur.fetchone()
if (x is not None):
if (len(x)==7):
sql = "INSERT INTO t_quotidien VALUES("
sql += "'" + str(dateBoucle) + "',"
# température moyenne
if (x[0] is not None):
sql+= str(round(x[0],2))+", "
else :
sql+="Null, "
# température max
if (x[1] is not None):
sql+= str(round(x[1],2))+", "
else :
sql+="Null, "
# température min
if (x[2] is not None):
sql+= str(round(x[2],2))+", "
else :
sql+="Null, "
# Humidité moyenne
if (x[3] is not None):
sql+= str(round(x[3],1))+", "
else :
sql+="Null, "
# bar
if (x[4] is not None):
sql+= str(round(x[4],2))+", "
else :
sql+="Null, "
# rain
if (x[5] is not None):
sql+= str(round(x[5],4))+", "
else :
sql+="Null, "
# rain rate
if (x[6] is not None):
sql+= str(round(x[6],4))
else :
sql+="Null"
sql+=",Null,Null,Null);" # tpe, dj18, dj16
#print(sql)
try:
# Executing the SQL command
cur.execute(sql)
# Commit your changes in the database
db.commit()
except:
# Rolling back in case of error
db.rollback()
# 2.4 Calculs TPE, DJ18 et DJ16
print("\nCalculs TPE & Cie\n")
print("date \t\tTPE \tDJ16.5 \tDJ18")
while True :
# première date où tpe est null
sql="SELECT Min(t_quotidien.q_date) AS MinDeq_date FROM
t_quotidien GROUP BY t_quotidien.q_tpe HAVING t_quotidien.q_tpe
Is Null;"
cur.execute(sql)
x = cur.fetchone()
if (x is None):
break # on sort de la boucle, tout est à jour
derDateQuot=x[0]
print(derDateQuot, end = '\t')
TPE=0
for i in range(3):
DateQuot = derDateQuot- timedelta(days=2 - i)
sql = "SELECT t_quotidien.q_temp FROM t_quotidien WHERE
t_quotidien.q_date = '" + str(DateQuot) +"' ;"
cur.execute(sql)
x = cur.fetchone()
if (x is not None):
if (i==0):
TPE = x[0]*0.1 # 2 jours avant = 10 %
elif(i==1):
TPE+=(x[0]*0.3) # 1 jour avant += 30 %
else :
TPE+=(x[0]*0.6) # le jour même += 60 %
print(round(TPE,2),end='\t')
if (16.5-TPE >= 0):
DJ16= round(16.5-TPE,2)
else :
DJ16 = 0
if (18-TPE >= 0):
DJ18= round(18-TPE,2)
else :
DJ18 = 0
print(round(DJ16,2), end='\t')
print(round(DJ18,2), end='\n')
sql="UPDATE t_quotidien SET t_quotidien.q_tpe = "+ str(TPE)
sql += ", t_quotidien.q_dj_18 = " +str(DJ18)
sql += ", t_quotidien.q_dj_16 = " + str(DJ16)
sql += " WHERE t_quotidien.q_date='" + str(DateQuot) +"';"
try:
# Executing the SQL command
cur.execute(sql)
# Commit your changes in the database
db.commit()
except:
# Rolling back in case of error
db.rollback()
db.close
Hmmm, you may have a non-standard schema.
As in fact, Tom, the Datetime field was no longer in 1st
position.
I placed it properly while keeping the additional field in 2nd
position and it still did not work, even by placing it in the last
position.
I have resolved it to delete it and it seems to leave, in any
case, no error message.
However, he no longer read the new data ...
I did a wee_device
--dump and (no clear memory) and there, everything seems to
work.
Probably your latest version is strict, because it worked before
and for quite a long time.
I would put this field in a separate and linked table
Thank you Tom