WDLXTV ML MYSQL

From WikiDLXTV
Jump to: navigation, search
DROP TABLE IF EXISTS `video`;
CREATE TABLE `video`(
    `hash` VARCHAR(16) primary key,
    `title` VARCHAR(255),
    `file` VARCHAR(255),
    `path` VARCHAR(255),
    `size` INT UNSIGNED,
    `mtime` INT,
    `mtime_date` VARCHAR(15),
    `duration` INT UNSIGNED,
    `bitrate` VARCHAR(16),
    `vcodec` VARCHAR(32),
    `height` SMALLINT,
    `width` SMALLINT,
    `fps` FLOAT,
    `type` VARCHAR(20),
    `year` VARCHAR(4),
    `imdb` VARCHAR(32),
    `acodec` VARCHAR(32),
    `channels` VARCHAR(16),
    `abitrate` VARCHAR(16),
    `tvdb` VARCHAR(32),
    `epid` VARCHAR(32),
    `tmdb` INT UNSIGNED,
    `id` INT NOT NULL
);
CREATE INDEX idx_video_title on video(title);
CREATE INDEX idx_video_file on video(file);
CREATE INDEX idx_video_path on video(path);
CREATE INDEX idx_video_mtime on video(mtime);
CREATE INDEX idx_video_date on video(mtime_date);
CREATE INDEX idx_video_imdb on video(imdb);
CREATE INDEX idx_video_tvdb on video(tvdb);
CREATE INDEX idx_video_epid on video(epid);
CREATE INDEX idx_video_tmdb on video(tmdb);
CREATE INDEX idx_video_type on video(type);
CREATE INDEX idx_video_year on video(year);
CREATE INDEX idx_video_id on video(id);

DROP TABLE IF EXISTS  `movies`;
CREATE TABLE `movies` (
    `id` INT UNSIGNED NOT NULL primary key auto_increment,
    `imdb` VARCHAR(32),
    `tmdb` INT UNSIGNED,
    `title` VARCHAR(255),
    `originaltitle` VARCHAR(255),
    `tagline` VARCHAR(255),
    `plot` TEXT,
    `year` SMALLINT UNSIGNED,
    `runtime` SMALLINT UNSIGNED,
    `rating` FLOAT,
    `genre` VARCHAR(255),
    `actor` VARCHAR(255),
    `studio` VARCHAR(255),
    `coutry` VARCHAR(255),
    `releasedate` VARCHAR(12),
    `director` VARCHAR(255),
    `writers` VARCHAR(255),
    `certification` VARCHAR(4),
    `mpaa` VARCHAR(255)
);
CREATE INDEX idx_movies_imdb ON movies(imdb);
CREATE INDEX idx_movies_tmdb ON movies(tmdb);
CREATE INDEX idx_movies_title ON movies(title);
CREATE INDEX idx_movies_year ON movies(year);
CREATE INDEX idx_movies_genre ON movies(genre);
CREATE INDEX idx_movies_studio ON movies(studio);
CREATE INDEX idx_movies_rating ON movies(rating);

DROP TABLE IF EXISTS  `tvinfo`;
CREATE TABLE `tvinfo` (
	`id` INT UNSIGNED NOT NULL primary key auto_increment,
    `hash` VARCHAR(16),
    `tvdbid` INT UNSIGNED,
    `season` SMALLINT UNSIGNED,
    `episode` SMALLINT UNSIGNED,
    `episodes` VARCHAR(255),
    `episodename` VARCHAR(255),
    `episodenames` VARCHAR(255),
    `episodeplot` TEXT,
    `episodereleasedate` VARCHAR(12),
    `gueststars` VARCHAR(255)
);
CREATE INDEX idx_tvinfo_hash ON tvinfo(hash);
CREATE INDEX idx_tvinfo_tvdbid ON tvinfo(tvdbid);
CREATE INDEX idx_tvinfo_season ON tvinfo(season);
CREATE INDEX idx_tvinfo_episode ON tvinfo(episode);

DROP TABLE IF EXISTS `series`;
CREATE TABLE `series` (
    `id` INT UNSIGNED NOT NULL primary key, 
    `Actors` VARCHAR(255), 
    `Airs_DayOfWeek` VARCHAR(16), 
    `Airs_Time` VARCHAR(10), 
    `ContentRating` VARCHAR(10), 
    `FirstAired` VARCHAR(10), 
    `Genre` VARCHAR(255), 
    `IMDB_ID` VARCHAR(15), 
    `Language` VARCHAR(3), 
    `Network` VARCHAR(64), 
    `NetworkID` VARCHAR(64), 
    `Rating` FLOAT(3,1), 
    `Runtime` INT(5), 
    `SeriesID` INT(11), 
    `SeriesName` VARCHAR(64), 
    `Status` VARCHAR(32), 
    `banner` VARCHAR(255), 
    `fanart` VARCHAR(255), 
    `poster` VARCHAR(255), 
    `lastupdated` INT(11), 
    `Overview` TEXT 
);
CREATE INDEX idx_series_IMDB_ID on series(IMDB_ID);
CREATE INDEX idx_series_Rating on series(Rating);
CREATE INDEX idx_series_SeriesID on series(SeriesID);

DROP TABLE IF EXISTS `episodes`;
CREATE TABLE `episodes` (
    `id` INT(11) NOT NULL PRIMARY KEY,
    `Combined_episodenumber` VARCHAR(5),
    `Combined_season` VARCHAR(5),
    `DVD_chapter` VARCHAR(16),
    `DVD_episodenumber` VARCHAR(16),
    `DVD_discid` VARCHAR(16),
    `DVD_season` VARCHAR(16),
    `Director` VARCHAR(64),
    `EpImgFlag` VARCHAR(16),
    `FirstAired` VARCHAR(10),
    `GuestStars` VARCHAR(255),
    `IMDB_ID` VARCHAR(16),
    `Language` VARCHAR(5),
    `ProductionCode` VARCHAR(16),
    `Rating` FLOAT(3,1),
    `EpisodeName` VARCHAR(255),
    `EpisodeNumber` INT(5),
    `SeasonNumber` INT(5),
    `Writer` VARCHAR(64),
    `Filename` VARCHAR(255),
    `lastupdated` INT(11),
    `seasonid` INT(11),
    `seriesid` INT(11),
    `Overview` TEXT
);
CREATE INDEX idx_episodes_IMDB_ID on episodes(IMDB_ID);
CREATE INDEX idx_episodes_seasonid on episodes(seasonid);
CREATE INDEX idx_episodes_seriesid on episodes(seriesid);

DROP TABLE IF EXISTS `series_images`;
CREATE TABLE `series_images` (
    `id` INT UNSIGNED NOT NULL,
    `type` VARCHAR(16),
    `image` LONGBLOB
);
CREATE INDEX idx_series_images_id on series_images(id);
CREATE INDEX idx_series_images_type on series_images(type);

DROP TABLE IF EXISTS `episodes_images`;
CREATE TABLE `episodes_images` (
    `id` INT UNSIGNED NOT NULL,
    `type` VARCHAR(16),
    `image` LONGBLOB
);
CREATE INDEX idx_episodes_images_id on episodes_images(id);
CREATE INDEX idx_episodes_images_type on episodes_images(type);

DROP TABLE IF EXISTS `movies_images`;
CREATE TABLE `movies_images` (
    `id` INT UNSIGNED NOT NULL,
    `type` VARCHAR(16),
    `url` VARCHAR(255),
    `image` LONGBLOB
);
CREATE INDEX idx_movies_images_id on movies_images(id);
CREATE INDEX idx_movies_images_type on movies_images(type);
CREATE INDEX idx_movies_images_url on movies_images(url);

DROP TABLE IF EXISTS `movies_images_links`;
CREATE TABLE `movies_images_links` (
    `id` INT UNSIGNED NOT NULL,
    `type` VARCHAR(16) NOT NULL,
    `size` VARCHAR(32) NOT NULL,
    `width` INT UNSIGNED NOT NULL DEFAULT 0,
    `height` INT UNSIGNED NOT NULL DEFAULT 0,
    `url` VARCHAR(255) NOT NULL
);
CREATE INDEX idx_movies_images_links_id on movies_images_links(id);
CREATE INDEX idx_movies_images_links_type on movies_images_links(type);
CREATE INDEX idx_movies_images_links_size on movies_images_links(size);
CREATE INDEX idx_movies_images_links_width on movies_images_links(width);
CREATE INDEX idx_movies_images_links_height on movies_images_links(height);