[vz-dev] Letzten aktuellen Leitungswert einer uuid auslesen

Thorben Thuermer r00t at constancy.org
Thu Nov 15 22:08:09 CET 2012


On Thu, 15 Nov 2012 21:52:45 +0100 Sven Peitz <sven.peitz at gmx.net> wrote:
> Am Donnerstag, den 15.11.2012, 14:49 +0100 schrieb Jakob Hirsch:
> > DELETE FROM data where channel_id=10 AND ts=0
>
> DELETE FROM data where channel_id=10 AND ts=0
> #1054 - Unknown column 'ts' in 'where clause'
> DELETE FROM data where ts=0
> #1054 - Unknown column 'ts' in 'where clause'
> 
> liegt das evtl daran, das es keine ts Spalte in der Tabelle data gibt?
> Da gibt es nur: id;channel_id;timestamp;value

genau, simpler fehler, die spalte heisst halt "timestamp" und nicht "ts"
also: DELETE FROM data where timestamp=0

> Das hier
>  create temporary table dupes as select d2.id from data d1, data d2
> where d1.id<d2.id and d1.timestamp=d2.timestamp and
> d1.channel_id=d2.channel_id;
>
> sollte jetzt nicht eine Tabelle namens dupes da sein?
> ist sie aber nicht.
> 
> folglich schlägt der folgende Befehl  fehl
> delete from data where id in (select id from dupes);
> #1146 - Table 'databasename.dupes' doesn't exist

es wird eine "temporary" table erstellt, die existiert nur in der einen
sql-session in der sie erstellt wurde.
wenn du aber phpmyadmin verwenderst, wird fuer jede anfrage eine neue
session gestartet - die tabelle ist dann schon laengst wieder futsch.

entweder die befehle in einer sql-shell ausfuehren,
oder "temporary" weglassen, und die tabelle spaeter manuell wieder loeschen,
oder beide befehle zusammen ausfuehren lassen (wenn phpmyadmin das akzeptiert).

> jetzt noch
> alter table data drop key chan_ts_idx, add unique key chan_ts_idx
> (channel_id, timestamp);
> #1062 - Duplicate entry '10-0' for key 'chan_ts_idx'

entsprechend weil das loeschen oben garnicht funktioniert hat...

> Ich bin ratlos....
> Gruß
> Sven

- T.



More information about the volkszaehler-dev mailing list