Arturia V Collection の database
いつの頃からか Arturia V Collection のファクトリープリセットが二重に出てくるようになっていました。アンインストールの後、再インストールしても解消されません。どうやらプリセットを記録しているデータベースに関しては、アンインストール時に手を付けられていない様子です。
結局のところ、ファクトリープリセットが保存されているディレクトリーを別のところに退避してから再インストールすることで、二重に表示されることはなくなりました。つまりはデータベースの再構築です。
データベース自体は SQLite なので中を見れます。退避させていたデータベースは sqlite3 で開こうとしても開けないようで、なにやら腐っていた様子。新規に作ったものは中を覗けますが。
というわけで、以下のような構造になっていましたというメモを残しておきます。
結局のところ、ファクトリープリセットが保存されているディレクトリーを別のところに退避してから再インストールすることで、二重に表示されることはなくなりました。つまりはデータベースの再構築です。
データベース自体は SQLite なので中を見れます。退避させていたデータベースは sqlite3 で開こうとしても開けないようで、なにやら腐っていた様子。新規に作ったものは中を覗けますが。
というわけで、以下のような構造になっていましたというメモを残しておきます。
CREATE TABLE `Booleans`(
`value` INTEGER NOT NULL,
PRIMARY KEY(value) );
CREATE TABLE `Characteristics`(
`key_id` INTEGER,
`name` TEXT UNIQUE NOT NULL,
PRIMARY KEY(key_id)
);
CREATE TABLE `Instruments`(
`key_id` INTEGER,
`name` TEXT NOT NULL,
`version` TEXT NOT NULL,
`category_id` INTEGER,
PRIMARY KEY(key_id)
);
CREATE TABLE `Packs`(
`key_id` INTEGER,
`name` TEXT NOT NULL,
`factory` INTEGER DEFAULT 0,
PRIMARY KEY(key_id),
CONSTRAINT uc_Pack UNIQUE(name, factory)
);
CREATE TABLE `Playlists`(
`key_id` INTEGER,
`name` TEXT NOT NULL DEFAULT '',
`idx` INTEGER DEFAULT 0,
`instrument_id` INTEGER DEFAULT 0,
`factory` INTEGER DEFAULT 0,
PRIMARY KEY(key_id)
);
CREATE TABLE `Preset_Characteristics`(
`key_id` INTEGER NOT NULL,
`preset_key` INTEGER,
`characteristic_key` INTEGER,
PRIMARY KEY(key_id),
FOREIGN KEY(`preset_key`) REFERENCES Preset_Id(key_id),
FOREIGN KEY(`characteristic_key`) REFERENCES Characteristics(key_id),
CONSTRAINT uc_Preset_Char UNIQUE(preset_key, characteristic_key)
);
CREATE TABLE `Preset_Id`(
`key_id` INTEGER,
`name` TEXT NOT NULL,
`type` INTEGER NOT NULL,
`instrument_key` INTEGER NOT NULL,
`sound_designer` INTEGER NOT NULL,
`rating` REAL NOT NULL DEFAULT 0.0,
`pack` INTEGER NOT NULL,
`comment` TEXT NOT NULL DEFAULT '',
`file_path` TEXT UNIQUE NOT NULL,
`time_last_save` TEXT NOT NULL,
`favorite` INTEGER DEFAULT 0,
`instrument_variation_key_id` INTEGER DEFAULT 1,
`featured_idx` INTEGER DEFAULT 10000,
`mode` INTEGER DEFAULT 0,
`hide_in_browser` INTEGER DEFAULT 0,
`sample_duration` INTEGER DEFAULT 0,
PRIMARY KEY(key_id),
FOREIGN KEY(`instrument_key`) REFERENCES Instruments(key_id)
);
CREATE TABLE `Preset_Metadata`(
`key_id` INTEGER NOT NULL,
`preset_key` INTEGER NOT NULL,
`name` TEXT NOT NULL,
`value` TEXT NOT NULL,
PRIMARY KEY(`key_id`),
FOREIGN KEY(`preset_key`) REFERENCES Preset_Id(key_id),
CONSTRAINT uc_Metadata UNIQUE(preset_key, name)
);
CREATE TABLE `Preset_Playlists`(
`key_id` INTEGER NOT NULL,
`preset_key` INTEGER DEFAULT - 1,
`playlist_key` INTEGER,
`idx` INTEGER DEFAULT 0,
PRIMARY KEY(key_id),
FOREIGN KEY(`preset_key`) REFERENCES Preset_Id(key_id),
FOREIGN KEY(`playlist_key`) REFERENCES Playlists(key_id)
);
CREATE TABLE `Preset_ProductIds`(
`key_id` INTEGER NOT NULL,
`preset_key` INTEGER NOT NULL,
`product_id` INTEGER NOT NULL,
PRIMARY KEY(key_id),
FOREIGN KEY(`preset_key`) REFERENCES Preset_Id(key_id),
CONSTRAINT uc_Preset_ProductId UNIQUE(preset_key, product_id)
);
CREATE TABLE `Purchasable_Packs`(
`product_id` INTEGER NOT NULL,
`instrument_id` INTEGER DEFAULT 0,
`name` TEXT NOT NULL,
`buy_url` TEXT NOT NULL,
`baseline` TEXT NOT NULL,
`description` TEXT NOT NULL,
`price` TEXT,
`is_free` INTEGER DEFAULT 0,
`preset_count` INTEGER DEFAULT 0,
`icons_folder` TEXT NOT NULL DEFAULT '',
`parents` TEXT NOT NULL DEFAULT '',
`title_color` TEXT NOT NULL DEFAULT '',
`bg_color` TEXT NOT NULL DEFAULT '',
`base_price` TEXT DEFAULT '',
`is_currently_free` INTEGER DEFAULT 0,
`offer_label` TEXT NOT NULL DEFAULT '',
`discount` TEXT NOT NULL DEFAULT '',
PRIMARY KEY(`product_id`, `instrument_id`)
);
CREATE TABLE `Purchasable_Packs_Preview`(
`key_id` INTEGER NOT NULL,
`product_id` INTEGER NOT NULL,
`instrument_id` INTEGER DEFAULT 0,
`name` TEXT NOT NULL,
PRIMARY KEY(`key_id`),
FOREIGN KEY(`product_id`) REFERENCES Purchasable_Packs(product_id),
FOREIGN KEY(`instrument_id`) REFERENCES Purchasable_Packs(instrument_id),
CONSTRAINT uc_Pack_Preview UNIQUE(product_id, instrument_id, name)
);
CREATE TABLE `Sound_Designers`(
`key_id` INTEGER,
`name` TEXT UNIQUE NOT NULL,
PRIMARY KEY(key_id)
);
CREATE TABLE `Status`(
`name` TEXT NOT NULL,
`value` TEXT NOT NULL,
`timestamp` TEXT NOT NULL,
PRIMARY KEY(name)
);
CREATE TABLE `Types`(
`key_id` INTEGER,
`name` TEXT UNIQUE NOT NULL,
PRIMARY KEY(key_id)
);
CREATE TABLE `Variations`(
`key_id` INTEGER,
`name` TEXT NOT NULL,
`variation_idx` INTEGER DEFAULT 0,
`instrument_id` INTEGER DEFAULT 0,
PRIMARY KEY(key_id),
CONSTRAINT uc_Variation UNIQUE(variation_idx, name, instrument_id)
);
`value` INTEGER NOT NULL,
PRIMARY KEY(value) );
CREATE TABLE `Characteristics`(
`key_id` INTEGER,
`name` TEXT UNIQUE NOT NULL,
PRIMARY KEY(key_id)
);
CREATE TABLE `Instruments`(
`key_id` INTEGER,
`name` TEXT NOT NULL,
`version` TEXT NOT NULL,
`category_id` INTEGER,
PRIMARY KEY(key_id)
);
CREATE TABLE `Packs`(
`key_id` INTEGER,
`name` TEXT NOT NULL,
`factory` INTEGER DEFAULT 0,
PRIMARY KEY(key_id),
CONSTRAINT uc_Pack UNIQUE(name, factory)
);
CREATE TABLE `Playlists`(
`key_id` INTEGER,
`name` TEXT NOT NULL DEFAULT '',
`idx` INTEGER DEFAULT 0,
`instrument_id` INTEGER DEFAULT 0,
`factory` INTEGER DEFAULT 0,
PRIMARY KEY(key_id)
);
CREATE TABLE `Preset_Characteristics`(
`key_id` INTEGER NOT NULL,
`preset_key` INTEGER,
`characteristic_key` INTEGER,
PRIMARY KEY(key_id),
FOREIGN KEY(`preset_key`) REFERENCES Preset_Id(key_id),
FOREIGN KEY(`characteristic_key`) REFERENCES Characteristics(key_id),
CONSTRAINT uc_Preset_Char UNIQUE(preset_key, characteristic_key)
);
CREATE TABLE `Preset_Id`(
`key_id` INTEGER,
`name` TEXT NOT NULL,
`type` INTEGER NOT NULL,
`instrument_key` INTEGER NOT NULL,
`sound_designer` INTEGER NOT NULL,
`rating` REAL NOT NULL DEFAULT 0.0,
`pack` INTEGER NOT NULL,
`comment` TEXT NOT NULL DEFAULT '',
`file_path` TEXT UNIQUE NOT NULL,
`time_last_save` TEXT NOT NULL,
`favorite` INTEGER DEFAULT 0,
`instrument_variation_key_id` INTEGER DEFAULT 1,
`featured_idx` INTEGER DEFAULT 10000,
`mode` INTEGER DEFAULT 0,
`hide_in_browser` INTEGER DEFAULT 0,
`sample_duration` INTEGER DEFAULT 0,
PRIMARY KEY(key_id),
FOREIGN KEY(`instrument_key`) REFERENCES Instruments(key_id)
);
CREATE TABLE `Preset_Metadata`(
`key_id` INTEGER NOT NULL,
`preset_key` INTEGER NOT NULL,
`name` TEXT NOT NULL,
`value` TEXT NOT NULL,
PRIMARY KEY(`key_id`),
FOREIGN KEY(`preset_key`) REFERENCES Preset_Id(key_id),
CONSTRAINT uc_Metadata UNIQUE(preset_key, name)
);
CREATE TABLE `Preset_Playlists`(
`key_id` INTEGER NOT NULL,
`preset_key` INTEGER DEFAULT - 1,
`playlist_key` INTEGER,
`idx` INTEGER DEFAULT 0,
PRIMARY KEY(key_id),
FOREIGN KEY(`preset_key`) REFERENCES Preset_Id(key_id),
FOREIGN KEY(`playlist_key`) REFERENCES Playlists(key_id)
);
CREATE TABLE `Preset_ProductIds`(
`key_id` INTEGER NOT NULL,
`preset_key` INTEGER NOT NULL,
`product_id` INTEGER NOT NULL,
PRIMARY KEY(key_id),
FOREIGN KEY(`preset_key`) REFERENCES Preset_Id(key_id),
CONSTRAINT uc_Preset_ProductId UNIQUE(preset_key, product_id)
);
CREATE TABLE `Purchasable_Packs`(
`product_id` INTEGER NOT NULL,
`instrument_id` INTEGER DEFAULT 0,
`name` TEXT NOT NULL,
`buy_url` TEXT NOT NULL,
`baseline` TEXT NOT NULL,
`description` TEXT NOT NULL,
`price` TEXT,
`is_free` INTEGER DEFAULT 0,
`preset_count` INTEGER DEFAULT 0,
`icons_folder` TEXT NOT NULL DEFAULT '',
`parents` TEXT NOT NULL DEFAULT '',
`title_color` TEXT NOT NULL DEFAULT '',
`bg_color` TEXT NOT NULL DEFAULT '',
`base_price` TEXT DEFAULT '',
`is_currently_free` INTEGER DEFAULT 0,
`offer_label` TEXT NOT NULL DEFAULT '',
`discount` TEXT NOT NULL DEFAULT '',
PRIMARY KEY(`product_id`, `instrument_id`)
);
CREATE TABLE `Purchasable_Packs_Preview`(
`key_id` INTEGER NOT NULL,
`product_id` INTEGER NOT NULL,
`instrument_id` INTEGER DEFAULT 0,
`name` TEXT NOT NULL,
PRIMARY KEY(`key_id`),
FOREIGN KEY(`product_id`) REFERENCES Purchasable_Packs(product_id),
FOREIGN KEY(`instrument_id`) REFERENCES Purchasable_Packs(instrument_id),
CONSTRAINT uc_Pack_Preview UNIQUE(product_id, instrument_id, name)
);
CREATE TABLE `Sound_Designers`(
`key_id` INTEGER,
`name` TEXT UNIQUE NOT NULL,
PRIMARY KEY(key_id)
);
CREATE TABLE `Status`(
`name` TEXT NOT NULL,
`value` TEXT NOT NULL,
`timestamp` TEXT NOT NULL,
PRIMARY KEY(name)
);
CREATE TABLE `Types`(
`key_id` INTEGER,
`name` TEXT UNIQUE NOT NULL,
PRIMARY KEY(key_id)
);
CREATE TABLE `Variations`(
`key_id` INTEGER,
`name` TEXT NOT NULL,
`variation_idx` INTEGER DEFAULT 0,
`instrument_id` INTEGER DEFAULT 0,
PRIMARY KEY(key_id),
CONSTRAINT uc_Variation UNIQUE(variation_idx, name, instrument_id)
);
I am very impressed with your post because this post is very beneficial for me and provide a new knowledge to me
返信削除Waves 11 Full Bundle for Windows
KORG Legacy Crack