Databases

From Official Kodi Wiki
Revision as of 17:47, 9 January 2009 by >Nmrs (→‎tables)
Jump to navigation Jump to search
Incomplete.png INCOMPLETE:
This page or section is incomplete. Please add information or correct uncertain data which is marked with a ?

XBMC Database Details

XBMC utilizes SQLite, an open source light-weight SQL database-engine, to store all its library related data (Music, Video and Program databases). By default, the database files (*.db) are stored in The UserData Folder, specifically $HOME\UserData\Database\.

Also XBMC puts a video in it's database if you change any OSD setting while watching, resume points are also stored here. That is independant of if the video is part of the Video Library or not.

Accessing the Database via SQLite application

Database files can be transferred via FTP to a Windows-based computer and edited or analyzed with a SQLite graphical client. XBMC's version of the database engine should be compatible with the standard clients such as SQLiteBrowser or SQLiteCC, (more available management-tools can be found in sqlite.org WIKI).
We recommend you use SQLiteSpy version 1.5.2 or higher.

Database Structure

tables

actorlinkepisode

This table links actors to episodes and stores role information.

Column Name Data Type Description
idActor integer Foreign key to actors table.
idEpisode integer Foreign key to episode table.
strRole text Role the actor played in this episode.

actorlinkmovie

This table links actors to movies and stores role information.

Column Name Data Type Description
idActor integer Foreign key to actors table.
idMovie integer Foreign key to movie table.
strRole text Role the actor played in this movie.

actorlinktvshow

This table links actors to tv shows and stores role information.

Column Name Data Type Description
idActor integer Foreign key to actors table.
idMovie integer Foreign key to tv show table.
strRole text Role the actor played in this tv show.

actors

This table links actors to tv shows and stores role information.

Column Name Data Type Description
idActor integer Foreign key to actors table.
strActor integer Name of the actor.
strThumb text Thumbnail URL.

episode

This table stores television episode information.

Column Name Data Type Description
idEpisode integer Primary Key
c00 text Episode Title
c01 text Plot Summary
c02 text [unknown]
c03 text Rating
c04 text Writer
c05 text First Aired
c06 text Thumbnail URL
c07 text [unknown]
c08 text Has the episode been watched?
c09 text [unknown]
c10 text Director
c11 text [unknown]
c12 text Season
c13 text Episode Number
c14 text [unknown]
c15 text [unknown]
c16 text [unknown]
c17 text [unknown]
c18 text [unknown]
c19 text [unknown]
c20 text [unknown]
idFle integer Foreign key to the file for this episode

tvshow

This table stores television show information.

Column Name Data Type Description
idShow integer Primary Key
c00 text Show Title
c01 text Show Summary
c02 text [unknown]
c03 text [unknown]
c04 text Rating
c05 text First Aired
c06 text Thumbnail URL
c07 text [unknown]
c08 text Genre
c09 text [unknown]
c10 text Episode Guide URL
c11 text Fan Art URL
c12 text [unknown]
c13 text [unknown]
c14 text [unknown]
c15 text [unknown]
c16 text [unknown]
c17 text [unknown]
c18 text [unknown]
c19 text [unknown]
c20 text [unknown]

tvshowlinkepisode

This table is a simple linker table to join TV Shows and Episodes.

Column Name Data Type Description
idShow integer Foreign Key to tvshow table
idEpisode integer Foreign Key to episode table

views

episodeview

View that joins episode to file and tvshow (through tvshowlinkepisode) and path.

movieview

View that joins movie to file and path.

musicvideoview

View that joins movie to file and path.

tvshowview

View that joins tvshow to path. Also produces information about total number of episodes as well as number of watched and unwatched episodes.

TO-DO (what needs to be added to this database article)

  • The layout, etc. will be explained in more detail here later.