ユーザーデータベース

組み込み用のSQL ServerはなんかめんどくさそうだったのでやめてSQLiteにする。ゲイツごめん。ON CONFLICT句とか便利そうだし。毎度INSERTで被ったらUPDATEにしてくれる、とか。内部的には普通に書くのと同じかもしれないけど。
DBファイルはユーザーフォルダの下に作るべきだよなあ。自動更新の仕組みはユーザー毎では無いので、自動更新でSQL文を配布するのは何か工夫が要るわ。
そもそもテーブルの変更とかした後でexeに不具合があってバージョンダウンしたら動かない、とか困る。まあそれはDBもバックアップ取っておけばなんとかなるか。
ユーザー毎のDBファイルにCREATE TABLEとかALTER TABLEするのはどうするべきかなあ。勝手に検索して全部に実行ってのは乱暴過ぎる。そうなるとSQL文は置いておくだけにして、fub.exe起動時に反映?けど全てのユーザーが更新完了したとか分からないから消せない。ゴミが残るのは嫌い。むしろup2date.exeじゃなくてこれだけは本体で自動更新するか。それなら問題無いな。
サーバー側に過去全てのSQL文を置いておいて、DBファイル内にバージョン管理用のテーブルを設置すればいいか。しかしあんまり増えると初期導入時が大変なことに。cgi経由にして、exeで使うDBバージョン番号と現在のDBバージョン番号をパラメタにしてごそっと持ってくることにしよう。解決。
あと肥大化した際のバキュームも要る。それはまあなんかメニューに入れとけばいいかね?自動でも出来るみたいだけどパフォーマンス落ちるのかなあ。まあ削除時だけなら大した話ではないかも。