2020-09-28 14:15:59 +02:00
|
|
|
table! {
|
|
|
|
|
ensembles (id) {
|
2020-11-28 21:45:22 +01:00
|
|
|
id -> Text,
|
2020-09-28 14:15:59 +02:00
|
|
|
name -> Text,
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
table! {
|
|
|
|
|
instrumentations (id) {
|
|
|
|
|
id -> BigInt,
|
2020-11-28 21:45:22 +01:00
|
|
|
work -> Text,
|
|
|
|
|
instrument -> Text,
|
2020-09-28 14:15:59 +02:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
table! {
|
|
|
|
|
instruments (id) {
|
2020-11-28 21:45:22 +01:00
|
|
|
id -> Text,
|
2020-09-28 14:15:59 +02:00
|
|
|
name -> Text,
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
2020-12-20 11:47:27 +01:00
|
|
|
table! {
|
|
|
|
|
mediums (id) {
|
|
|
|
|
id -> Text,
|
|
|
|
|
name -> Text,
|
|
|
|
|
discid -> Nullable<Text>,
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
2020-09-28 14:15:59 +02:00
|
|
|
table! {
|
|
|
|
|
performances (id) {
|
|
|
|
|
id -> BigInt,
|
2020-11-28 21:45:22 +01:00
|
|
|
recording -> Text,
|
|
|
|
|
person -> Nullable<Text>,
|
|
|
|
|
ensemble -> Nullable<Text>,
|
|
|
|
|
role -> Nullable<Text>,
|
2020-09-28 14:15:59 +02:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
table! {
|
|
|
|
|
persons (id) {
|
2020-11-28 21:45:22 +01:00
|
|
|
id -> Text,
|
2020-09-28 14:15:59 +02:00
|
|
|
first_name -> Text,
|
|
|
|
|
last_name -> Text,
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
table! {
|
|
|
|
|
recordings (id) {
|
2020-11-28 21:45:22 +01:00
|
|
|
id -> Text,
|
|
|
|
|
work -> Text,
|
2020-09-28 14:15:59 +02:00
|
|
|
comment -> Text,
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
2020-11-01 11:04:31 +01:00
|
|
|
table! {
|
2020-12-20 11:47:27 +01:00
|
|
|
track_sets (id) {
|
|
|
|
|
id -> Text,
|
|
|
|
|
medium -> Text,
|
|
|
|
|
index -> Integer,
|
2020-11-28 21:45:22 +01:00
|
|
|
recording -> Text,
|
2020-12-20 11:47:27 +01:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
table! {
|
|
|
|
|
tracks (id) {
|
|
|
|
|
id -> Text,
|
|
|
|
|
track_set -> Text,
|
|
|
|
|
index -> Integer,
|
2020-11-01 11:04:31 +01:00
|
|
|
work_parts -> Text,
|
2021-01-15 22:27:43 +01:00
|
|
|
path -> Text,
|
2020-11-01 11:04:31 +01:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
2020-09-28 14:15:59 +02:00
|
|
|
table! {
|
|
|
|
|
work_parts (id) {
|
|
|
|
|
id -> BigInt,
|
2020-11-28 21:45:22 +01:00
|
|
|
work -> Text,
|
2020-09-28 14:15:59 +02:00
|
|
|
part_index -> BigInt,
|
|
|
|
|
title -> Text,
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
table! {
|
|
|
|
|
work_sections (id) {
|
|
|
|
|
id -> BigInt,
|
2020-11-28 21:45:22 +01:00
|
|
|
work -> Text,
|
2020-09-28 14:15:59 +02:00
|
|
|
title -> Text,
|
|
|
|
|
before_index -> BigInt,
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
table! {
|
|
|
|
|
works (id) {
|
2020-11-28 21:45:22 +01:00
|
|
|
id -> Text,
|
|
|
|
|
composer -> Text,
|
2020-09-28 14:15:59 +02:00
|
|
|
title -> Text,
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
joinable!(instrumentations -> instruments (instrument));
|
|
|
|
|
joinable!(instrumentations -> works (work));
|
|
|
|
|
joinable!(performances -> ensembles (ensemble));
|
|
|
|
|
joinable!(performances -> instruments (role));
|
|
|
|
|
joinable!(performances -> persons (person));
|
|
|
|
|
joinable!(performances -> recordings (recording));
|
|
|
|
|
joinable!(recordings -> works (work));
|
2020-12-20 11:47:27 +01:00
|
|
|
joinable!(track_sets -> mediums (medium));
|
|
|
|
|
joinable!(track_sets -> recordings (recording));
|
|
|
|
|
joinable!(tracks -> track_sets (track_set));
|
2020-09-28 14:15:59 +02:00
|
|
|
joinable!(work_parts -> works (work));
|
|
|
|
|
joinable!(work_sections -> works (work));
|
|
|
|
|
joinable!(works -> persons (composer));
|
|
|
|
|
|
|
|
|
|
allow_tables_to_appear_in_same_query!(
|
|
|
|
|
ensembles,
|
|
|
|
|
instrumentations,
|
|
|
|
|
instruments,
|
2020-12-20 11:47:27 +01:00
|
|
|
mediums,
|
2020-09-28 14:15:59 +02:00
|
|
|
performances,
|
|
|
|
|
persons,
|
|
|
|
|
recordings,
|
2020-12-20 11:47:27 +01:00
|
|
|
track_sets,
|
2020-11-01 11:04:31 +01:00
|
|
|
tracks,
|
2020-09-28 14:15:59 +02:00
|
|
|
work_parts,
|
|
|
|
|
work_sections,
|
|
|
|
|
works,
|
|
|
|
|
);
|