/* Copyright 2024 (c) Anna Schumaker */ PRAGMA user_version = 3; /* * The `listenbrainz_queue` table is used to store recently played tracks * before submitting them to ListenBrainz. This gives us some form of offline * recovery, since anything in this table needs to be submitted the next time * we can successfully connect. As a bonus, I prepopulate this table using * the last played data from tracks that have already been played when this * table is created. */ CREATE TABLE listenbrainz_queue ( listenid INTEGER PRIMARY KEY, trackid INTEGER REFERENCES tracks (trackid) ON DELETE CASCADE ON UPDATE CASCADE, timestamp TIMESTAMP DEFAULT CURRENT_TIMESTAMP ); INSERT INTO listenbrainz_queue (trackid, timestamp) SELECT trackid, lastplayed FROM tracks WHERE lastplayed IS NOT NULL;