Russian Qt Forum
Ноябрь 22, 2024, 23:28 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Схема базы данных для хранения видео  (Прочитано 9021 раз)
gil9red
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 1805



Просмотр профиля WWW
« : Ноябрь 16, 2016, 12:25 »

Сначала задумывалось для хранения информации по сериалам, но не хотелось загонять себя в рамки.
Хочу сделать базу для хранения видео: фильмы, сериалы, мультфильмы, аниме, порно и т.п. База будет содержать ссылки на файлы видео.

Первоначальные таблицы заставили меня сомневаться в адекватности Веселый
Конечно, правильно завести отдельные таблицы для жанров и тегов и т.п.
Код
SQL
CREATE TABLE "Serial" (  
   "Id" INTEGER NOT NULL,  
   "OriginalName" VARCHAR,  
   "EnglishName" VARCHAR,  
   "RussianName" VARCHAR,  
   "SeasonNumber" INTEGER,  
   "Genre" VARCHAR,  
   "Tags" VARCHAR,  
   "ReleaseDate" VARCHAR,  
   "Producer" VARCHAR,  
   "Actors" VARCHAR,  
   "AuthorOriginal" VARCHAR,  
   "Annotation" VARCHAR,  
   "Cover" VARCHAR,  
   "Screenshots" VARCHAR,  
   "Count" INTEGER,  
 
   PRIMARY KEY ("Id")  
)
 
CREATE TABLE "SerialVideo" (
   "Id" INTEGER NOT NULL,
   "SerialId" INTEGER,
   "FileName" VARCHAR,
   "Number" INTEGER,
   "Title" VARCHAR,
   "Duration" INTEGER,
 
   PRIMARY KEY ("Id"),
   FOREIGN KEY("SerialId") REFERENCES "Serial" ("Id")
)

я много думал о том как присобачить например фильмы: добавить в таблицу сериала, но с одной серией или сделать отдельную таблицу. А если я сделаю в отдельной фильмы, заведу таблицу тегов, и таблицу связей тегов с таблицами, то делать две таблицы связей, или одну, но завести еще одно поле, определяющее принадлежность: сериал или фильм. Были и другие сомнения из-за которых так ничего путного не получилось придумать.

Помогите придумать таблицы базы и их связи Улыбающийся


Задачами работы с БД будут:
- Добавление:
-- Сериала
-- Фильма
-- Мультфильма
-- ...

Получение:
-- Информации о сериале
-- Информации о сериях сериала
-- Информации о фильме
-- Информации о мультфильме
-- ...

Поиск по:
-- Тегам
-- Жанрам
-- Категориям (сериал, мультфильм, фильм, и т.п.)
-- Ключевым полям (например название)
« Последнее редактирование: Ноябрь 16, 2016, 18:09 от gil9red » Записан

panAlexey
Гипер активный житель
*****
Offline Offline

Сообщений: 864

Акцио ЗАРПЛАТА!!!!! :(


Просмотр профиля
« Ответ #1 : Ноябрь 16, 2016, 15:54 »

БД для каких нужд?
Для собственного потребления?
Типовые операции с БД какие?
Записан

Win Xp SP-2, Qt4.3.4/MinGW. http://trdm.1gb.ru/
gil9red
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 1805



Просмотр профиля WWW
« Ответ #2 : Ноябрь 16, 2016, 16:00 »

Для интереса (может для диплома пойдет).
Типовыми  будут добавление записей и получение из базы. Удаление не предусматривается Улыбающийся

Напишу простенький вебсервер и через его api буду строить общение в формате json.
типа:
GET http://localhost/api/v1/search?title={title}&count={count}&page={page}
GET http://localhost/api/v1/get_serial?id={id}
GET http://localhost/api/v1/get_serial_video_list?id={id}&page={page}
POST http://localhost/api/v1/add_serial    
Записан

panAlexey
Гипер активный житель
*****
Offline Offline

Сообщений: 864

Акцио ЗАРПЛАТА!!!!! :(


Просмотр профиля
« Ответ #3 : Ноябрь 16, 2016, 16:03 »

Понятно.
Я уже отвык работать с созданием БД через SQL.
Ленивый Улыбающийся Предпочитаю какую-нить ИДЕ, с графическим интерфейсом, что-бы сама таблички мейкала и формочки создавала.
Да и веб интерфейс сама генерила..
Записан

Win Xp SP-2, Qt4.3.4/MinGW. http://trdm.1gb.ru/
gil9red
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 1805



Просмотр профиля WWW
« Ответ #4 : Ноябрь 16, 2016, 16:10 »

Вот и прошу помощи, т.к. в базах не шарю и придумать подходящую схему не смог Улыбающийся
Записан

panAlexey
Гипер активный житель
*****
Offline Offline

Сообщений: 864

Акцио ЗАРПЛАТА!!!!! :(


Просмотр профиля
« Ответ #5 : Ноябрь 16, 2016, 16:47 »

Вот и прошу помощи, т.к. в базах не шарю и придумать подходящую схему не смог Улыбающийся
Это зависит от тех задач, с которыми ты будешь обращаться к БД.
Записан

Win Xp SP-2, Qt4.3.4/MinGW. http://trdm.1gb.ru/
gil9red
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 1805



Просмотр профиля WWW
« Ответ #6 : Ноябрь 16, 2016, 18:10 »

Вот и прошу помощи, т.к. в базах не шарю и придумать подходящую схему не смог Улыбающийся
Это зависит от тех задач, с которыми ты будешь обращаться к БД.

Добавил к вопросу
Записан

qate
Супер
******
Offline Offline

Сообщений: 1177


Просмотр профиля
« Ответ #7 : Ноябрь 17, 2016, 08:53 »

я бы посмотрел что есть уже сделанного, например http://stackoverflow.com/questions/2787808/is-there-any-online-free-movie-information-apis
Записан
gil9red
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 1805



Просмотр профиля WWW
« Ответ #8 : Ноябрь 17, 2016, 09:24 »

я бы посмотрел что есть уже сделанного, например http://stackoverflow.com/questions/2787808/is-there-any-online-free-movie-information-apis

The Movie Database (TMDb)? Улыбающийся
Интересно, надо будет посмотреть, спасибо Улыбающийся

UPD.
Интересно, конечно, есть api, но не совсем то, что нужно было Улыбающийся
« Последнее редактирование: Ноябрь 17, 2016, 16:57 от gil9red » Записан

gil9red
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 1805



Просмотр профиля WWW
« Ответ #9 : Ноябрь 18, 2016, 14:06 »

Попробовал накидать схему (пока без связей между таблицами) и получилось следующее:
Записан

qate
Супер
******
Offline Offline

Сообщений: 1177


Просмотр профиля
« Ответ #10 : Ноябрь 21, 2016, 15:11 »

Попробовал накидать схему (пока без связей между таблицами) и получилось следующее:

has_many_series это пять )
бывают фильмы из 2+ серий, и это не сериал
я бы стащил по возможности базу и имеющихся баз, там все этом могли учесть
ну и как всегда при реализации и наполнении базы, а также ближе к релизу станет как обычно ясно, что надо все переписать )
Записан
gil9red
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 1805



Просмотр профиля WWW
« Ответ #11 : Ноябрь 21, 2016, 16:27 »

Ну, нужно как-то ведь было отличать сериалы и фильмы, не плодя сущностей Улыбающийся Хотя, наверное, проще по категории определять.... хз, сам в этом неуверен Улыбающийся

Спросить, конечно, можно, вот например у The Movie Database и получить ответ:
Цитировать
Hi Ilya,
Unfortunately, I don’t have anything like this available. All of that kind of information is kept private.

Cheers,

Не представляю что такого секретного в схеме базы данных сайта, хранящего информацию о фильмах/сериалах Улыбающийся
« Последнее редактирование: Ноябрь 21, 2016, 16:30 от gil9red » Записан

DarkHobbit
Самовар
**
Offline Offline

Сообщений: 197


Просмотр профиля
« Ответ #12 : Ноябрь 25, 2016, 01:03 »

База будет содержать ссылки на файлы видео
Идея хорошая. А ты, мил-человек, не хочешь сделать свои таблички как дополнение к БД QCat? Это каталогизатор сменных носителей и файлов на них общего назначения. Писан на Qt, СУБД - SQLite.

Проект, правда, давно не развивается, но по минимальным функциям - просто работает, т.е. найти, на каком диске/ресурсе какой файл лежит не проблема. К нему как раз напрашивается набор расширений - по фильмам, музыке, изображениям и др. В проприетарном WhereIsIt, аналогом которого является QCat, такое делается через плагины, но там не только код закрыт, но и формат данных зашифрован по самые помидоры. А тут - SQLite. Автор - болгарин, Виктор Никифоров.
Записан

Мои проекты на Qt: DoubleContact, LInvert
gil9red
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 1805



Просмотр профиля WWW
« Ответ #13 : Ноябрь 25, 2016, 08:17 »

База будет содержать ссылки на файлы видео
Идея хорошая. А ты, мил-человек, не хочешь сделать свои таблички как дополнение к БД QCat? Это каталогизатор сменных носителей и файлов на них общего назначения. Писан на Qt, СУБД - SQLite.

Проект, правда, давно не развивается, но по минимальным функциям - просто работает, т.е. найти, на каком диске/ресурсе какой файл лежит не проблема. К нему как раз напрашивается набор расширений - по фильмам, музыке, изображениям и др. В проприетарном WhereIsIt, аналогом которого является QCat, такое делается через плагины, но там не только код закрыт, но и формат данных зашифрован по самые помидоры. А тут - SQLite. Автор - болгарин, Виктор Никифоров.

Это какое-то приложение с базой внутри?
Просто, я пишу сервер и у сервера будет работа с базой
Записан

Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.171 секунд. Запросов: 22.