2006/08/18(金)曲管理のためのWebアプリケーション::DB検討中2
前回のコメントからデータベーススキーマを再検討。
DB構造
Table:Track
個別トラックの情報を記録するためのテーブル
TrackID | Primary Key |
---|---|
TrackName | 曲タイトル |
TrackYomi | 曲タイトルよみ |
TrackNo | アルバムの中のトラックナンバー |
ArtistID | アーティストID |
WriterID | 作詞者ID |
ComposerID | 作曲者ID |
Arranger | 編曲者ID |
AlbumID | アルバムID |
GenreID | ジャンルID |
Time | 曲時間 |
Rating | 曲の評価 |
Comment | コメント |
Table:Album
アルバム全体の情報を記録するためのテーブル
AlbumID | Primary Key |
---|---|
AlbumName | アルバム名 |
AlbumYomi | アルバム名よみ |
DiscNo | アルバム中の何枚目か |
DiskTypeID | ディスクタイプID |
ArtistID | アーティストID |
ReleaseDate | リリース日 |
SPEC | 規格品番 |
TotalTrack | アルバムのトラック総数 |
TotalTime | アルバムの全時間 |
Comment | コメント |
asin | Amazonとの連携*1 |
Table:Artist
アーティスト情報を記録するためのテーブル
ArtistID | Primary Key |
---|---|
ArtistName | アーティスト名 |
ArtistYomi | アーティスト名よみ |
Parent | 親となるアーティストID |
AliasID | アーティスト名のエイリアス |
URI | オフィシャルサイトURI |
Comment | コメント |
Table:DiskType
8cmシングルとかベストアルバムとかのディスク種別を記録するためのテーブル
DiskTypeID | Primary Key |
---|---|
DiskType | ディスクタイプ |
Table:GenreID
J-POPとかのジャンル情報を記録するためのテーブル
GenreID | Primary Key |
---|---|
Genre | ジャンル |
Table:Alias
AliasID | Primary Key |
---|---|
Alias | アーティストIDを指定 |
作詞、作曲、編曲者のデータベースはアーティストテーブルを使用するつもり。
アーティストの主従関係は、親となるアーティストを指定。
例えば、ave;new feat. 佐倉沙織だと「ave;new」と「佐倉沙織」を指定するといった感じ。
アーティストのエイリアスは別途エイリアステーブルを使用する。
エイリアスで指定された場合、異なる名称でも同格であるとする。
あと、今考えているのはマルチユーザーにより情報の追加・補完が可能なようにするというのを考えている。
CDDB機能については、他のCDDBサーバからのインポートの他、CDDBサーバとしても使用できるようにしたいなぁ。
2006/08/14(月)曲管理のためのWebアプリケーション::DB検討中
DB構造
Table:Track
個別トラックの情報を記録するためのテーブル
TrackID | Primary Key |
---|---|
TrackName | 曲タイトル |
TrackYomi | 曲タイトルよみ |
TrackNo | アルバムの中のトラックナンバー |
ArtistID | アーティストID |
AlbumID | アルバムID |
GenreID | ジャンルID |
Time | 曲時間 |
Rating | 曲の評価 |
Comment | コメント |
Table:Album
アルバム全体の情報を記録するためのテーブル
AlbumID | Primary Key |
---|---|
AlbumName | アルバム名 |
AlbumYomi | アルバム名よみ |
DiscNo | アルバム中の何枚目か |
DiskTypeID | ディスクタイプID |
ArtistID | アーティストID |
ReleaseDate | リリース日 |
TotalTrack | アルバムのトラック総数 |
TotalTime | アルバムの全時間 |
Comment | コメント |
asin | Amazonとの連携*1 |
Table:Artist
アーティスト情報を記録するためのテーブル
ArtistID | Primary Key |
---|---|
ArtistName | アーティスト名 |
ArtistYomi | アーティスト名よみ |
URI | オフィシャルサイトURI |
Comment | コメント |
Table:DiskType
8cmシングルとかベストアルバムとかのディスク種別を記録するためのテーブル
DiskTypeID | Primary Key |
---|---|
DiskType | ディスクタイプ |
Table:GenreID
J-POPとかのジャンル情報を記録するためのテーブル
GenreID | Primary Key |
---|---|
Genre | ジャンル |
とりあえずこんなところか?
作り始めてからテーブル構造を変えたくないのでもう少し検討するつもり。
2006/07/04(火)Webアプリの開発 (2)
これは自分が使いたい「好きな曲リスト」を作れば応用可能だと思う。
とりあえず曲リストを登録可能なシステムを作ってみるか…
入力可能な項目として
- タイトル
- アーティスト名
- アルバム名(収録元)
- 備考
2006/07/03(月)Webアプリの開発 (1)
開発環境はApache2 + PHP5 + PostgreSQLあたりを利用して。
とりあえず作ろうかと考えているWebアプリはこんな感じ。
- 蔵書管理システム
- CD管理システム
- カレンダー作成
- 辞書
蔵書管理
入力できる項目として- タイトル
- タイトルのよみ
- 筆者/作者
- 筆者/作者のよみ
- 出版社
- 巻数
- 備考
- 検索機能
- モバイル(i-mode)対応
CD管理
入力できる項目として- ID3タグで入力可能な項目
カレンダー作成
指定できる項目- 年/月
- 日曜始まりか月曜始まりか
- カレンダーの幅(px)
- カレンダーの高さ(px)
- バックグラウンドに画像を指定可能
辞書
ユーザが自由に登録・編集可能な辞書旧式のコンピューター用語辞書に触発されました。
記事の多さなどはWikipediaにはとうてい敵いませんので、客観性よりも主観で語るような辞書を作ったらおもしろいのではないかと思います。
とりあえず一番最初に登録する項目は「JISかな入力」あたりでしょうかw