名前 | 概要 |
---|---|
書籍の追加 | 書籍を追加する際に関連するテーブルのまとまり |
顧客の追加 | 顧客を追加する際に関連するテーブルのまとまり |
配送先の追加 | 配送先を追加する際に関連するテーブルのまとまり |
書籍の購入 | 書籍を購入する際に関連するテーブルのまとまり。 顧客が購入できるためには、配送先が設定される必要がある。 配送時に参照される製品コードはproductsテーブルから取得される。 |
名前 | カラム一覧 | コメント | タイプ |
---|---|---|---|
public._prisma_migrations | 8 | BASE TABLE | |
public.products | 2 | 商品:社内全体で管理されている商品コードを格納 | BASE TABLE |
public.books | 6 | 書籍 | BASE TABLE |
public.publishers | 2 | 出版社(管理者用アプリからのみ作成される) | BASE TABLE |
public.authors | 2 | 著者(書籍とは別に作成可能) | BASE TABLE |
public.author_books | 2 | 著者と書籍の中間テーブル | BASE TABLE |
public.book_images | 3 | 書籍画像 | BASE TABLE |
public.customers | 4 | 顧客 | BASE TABLE |
public.orders | 2 | 注文:注文の確定ごとに作成される。請求処理は注文の重複がないかどうか確認されてから行われるため、必ずしも対応関係ではない。 | BASE TABLE |
public.order_items | 5 | 注文明細 | BASE TABLE |
public.shipping_addresses | 6 | 配送先 | BASE TABLE |
public.author_ranking_materialized_view | 3 | 著者ごとの書籍販売数ランキングのマテビュー | MATERIALIZED VIEW |
public.books_view | 7 | 書籍のビュー | VIEW |
erDiagram
"public.books" }o--|| "public.publishers" : "FOREIGN KEY (publisher_id) REFERENCES publishers(id) ON UPDATE CASCADE ON DELETE RESTRICT"
"public.author_books" }o--|| "public.books" : "FOREIGN KEY (book_id) REFERENCES books(id) ON UPDATE CASCADE ON DELETE RESTRICT"
"public.author_books" }o--|| "public.authors" : "FOREIGN KEY (author_id) REFERENCES authors(id) ON UPDATE CASCADE ON DELETE RESTRICT"
"public.book_images" }o--|| "public.books" : "FOREIGN KEY (book_id) REFERENCES books(id) ON UPDATE CASCADE ON DELETE RESTRICT"
"public.orders" }o--|| "public.customers" : "FOREIGN KEY (customer_id) REFERENCES customers(id) ON UPDATE CASCADE ON DELETE RESTRICT"
"public.order_items" }o--|| "public.books" : "FOREIGN KEY (book_id) REFERENCES books(id) ON UPDATE CASCADE ON DELETE RESTRICT"
"public.order_items" }o--|| "public.orders" : "FOREIGN KEY (order_id) REFERENCES orders(id) ON UPDATE CASCADE ON DELETE RESTRICT"
"public.shipping_addresses" }o--|| "public.customers" : "FOREIGN KEY (customer_id) REFERENCES customers(id) ON UPDATE CASCADE ON DELETE RESTRICT"
"public._prisma_migrations" {
varchar_36_ id
varchar_64_ checksum
timestamp_with_time_zone finished_at
varchar_255_ migration_name
text logs
timestamp_with_time_zone rolled_back_at
timestamp_with_time_zone started_at
integer applied_steps_count
}
"public.products" {
text id
text code
}
"public.books" {
text id
text title
timestamp_3__without_time_zone published_on
integer price
text subtitle
text publisher_id FK
}
"public.publishers" {
text id
text name
}
"public.authors" {
text id
text name
}
"public.author_books" {
text author_id FK
text book_id FK
}
"public.book_images" {
text id
text url
text book_id FK
}
"public.customers" {
text id
text name
text email
text password
}
"public.orders" {
text id
text customer_id FK
}
"public.order_items" {
text id
text order_id FK
text book_id FK
integer quantity
integer price
}
"public.shipping_addresses" {
text id
text customer_id FK
text name
text postal_code
text address
text tel
}
"public.author_ranking_materialized_view" {
text author_id
text author_name
bigint book_count
}
"public.books_view" {
text id
text title
integer price
text publisher_id
text publisher_name
text author_id
text author_name
}
Generated by tbls