if (MOVIES in flags) {
description_changed ("Downloading movie list ...");
downloader.download (url + "movies.list.gz", movie_parser);
- description_changed ("Creating title index ...");
- sqlite.create_title_index ();
}
percent_finished = 33;
if (GENRES in flags) {
}
description_changed ("Creating indices ...");
- sqlite.create_votes_index ();
+ if (MOVIES in flags)
+ sqlite.create_votes_index ();
if (!cancellable.is_cancelled ()) {
stdout.printf ("Download complete.\n");
public int clear () {
int rc;
- rc = db.exec ("DROP TABLE IF EXISTS Movies; CREATE TABLE Movies (Title TEXT NOT NULL, Year INTEGER, Rating INTEGER, Votes INTEGER, Genres INTEGER NOT NULL DEFAULT 0); DROP TABLE IF EXISTS Genres; CREATE TABLE Genres (Bit INTEGER PRIMARY KEY, Genre TEXT NOT NULL);", callback, null);
- if (rc != Sqlite.OK) {
- stderr.printf ("SQL error: %d, %s\n", rc, db.errmsg ());
- return 1;
- }
-
- return 0;
- }
-
- public int create_title_index () {
- int rc;
-
- rc = db.exec ("CREATE INDEX MovieTitles ON Movies(Title);", callback, null);
+ rc = db.exec (
+ "DROP TABLE IF EXISTS Movies;" +
+ "CREATE TABLE Movies (Title TEXT PRIMARY KEY COLLATE NOCASE, Year INTEGER, Rating INTEGER, Votes INTEGER NOT NULL DEFAULT 0, Genres INTEGER NOT NULL DEFAULT 0);" +
+ "DROP TABLE IF EXISTS Genres;" +
+ "CREATE TABLE Genres (Bit INTEGER PRIMARY KEY, Genre TEXT NOT NULL);",
+ callback, null);
if (rc != Sqlite.OK) {
stderr.printf ("SQL error: %d, %s\n", rc, db.errmsg ());
return 1;