foltiaおひっこし

天気もいいし、ずっとr91くらい?+SQLiteパッチで運用していたfoltiaを、SQLite対応済みのr100に移行しようかと<ひきこもり
mktable.sqlite.txtを比較すると、foltia_m2pfilesとfoltia_mp4filesにPRIMARY KEYが追加されてるのが異なる。alter tableしようとしたら。。。なんとSQLiteにはalter tableがないのかー。ぐはぁ。
しょうがないので、dumpして、schema書き換えて、restoreする。。。んだけど、この1年でテーブルファイルが40MB近くまで行っている。いったい何が溜まってる?

SQLite version 3.6.14.2
Enter ".help" for instructions
Enter SQL statements terminated with a ";"
sqlite> select count(*) from foltia_program;
762
sqlite> select count(*) from foltia_subtitle;
26078
sqlite> select count(*) from foltia_tvrecord;
19
sqlite> select count(*) from foltia_m2pfiles;
218
sqlite> select count(*) from foltia_mp4files;
5
sqlite> select count(*) from foltia_station;
151
sqlite> select count(*) from foltia_envpolicy;
0
sqlite> select count(*) from foltia_epg;
134044

。。。関東地方で1年弱に放送されるTV番組の数は、13万件を超えるようです。ひとつ賢くなりました。
全部消すのもなんなので、この3月までのを削除。

sqlite> select count(*) from foltia_epg where startdatetime < 201003999999;
119756
sqlite> delete from foltia_epg where startdatetime < 201003999999;

そんでもって、dumpして、schema書き換えて、restore。

sqlite> .output BACKUP.dump
sqlite> .dump
sqlite> .q

。。。viでごにょごにょ。。。

$ sqlite3 foltia.new
SQLite version 3.6.14.2
Enter ".help" for instructions
Enter SQL statements terminated with a ";"
sqlite> .read BACKUP.dump
sqlite> .q

というわけで、おぉ。ファイルサイズが40MB->7MBに。
あとは、foltia本体をr100に置き換えて、完了。