2006/08/18(金)曲管理のためのWebアプリケーション::DB検討中2

前回のコメントからデータベーススキーマを再検討。

DB構造

Table:Track

個別トラックの情報を記録するためのテーブル

TrackIDPrimary Key
TrackName曲タイトル
TrackYomi曲タイトルよみ
TrackNoアルバムの中のトラックナンバー
ArtistIDアーティストID
WriterID作詞者ID
ComposerID作曲者ID
Arranger編曲者ID
AlbumIDアルバムID
GenreIDジャンルID
Time曲時間
Rating曲の評価
Commentコメント

Table:Album

アルバム全体の情報を記録するためのテーブル

AlbumIDPrimary Key
AlbumNameアルバム名
AlbumYomiアルバム名よみ
DiscNoアルバム中の何枚目か
DiskTypeIDディスクタイプID
ArtistIDアーティストID
ReleaseDateリリース日
SPEC規格品番
TotalTrackアルバムのトラック総数
TotalTimeアルバムの全時間
Commentコメント
asinAmazonとの連携*1

Table:Artist

アーティスト情報を記録するためのテーブル

ArtistIDPrimary Key
ArtistNameアーティスト名
ArtistYomiアーティスト名よみ
Parent親となるアーティストID
AliasIDアーティスト名のエイリアス
URIオフィシャルサイトURI
Commentコメント

Table:DiskType

8cmシングルとかベストアルバムとかのディスク種別を記録するためのテーブル

DiskTypeIDPrimary Key
DiskTypeディスクタイプ

Table:GenreID

J-POPとかのジャンル情報を記録するためのテーブル

GenreIDPrimary Key
Genreジャンル

Table:Alias

AliasIDPrimary Key
AliasアーティストIDを指定

作詞、作曲、編曲者のデータベースはアーティストテーブルを使用するつもり。

アーティストの主従関係は、親となるアーティストを指定。
例えば、ave;new feat. 佐倉沙織だと「ave;new」と「佐倉沙織」を指定するといった感じ。

アーティストのエイリアスは別途エイリアステーブルを使用する。
エイリアスで指定された場合、異なる名称でも同格であるとする。

あと、今考えているのはマルチユーザーにより情報の追加・補完が可能なようにするというのを考えている。
CDDB機能については、他のCDDBサーバからのインポートの他、CDDBサーバとしても使用できるようにしたいなぁ。

*1 : 将来的に画像表示などができればいいなぁ

2006/08/14(月)曲管理のためのWebアプリケーション::DB検討中

DB構造

Table:Track

個別トラックの情報を記録するためのテーブル

TrackIDPrimary Key
TrackName曲タイトル
TrackYomi曲タイトルよみ
TrackNoアルバムの中のトラックナンバー
ArtistIDアーティストID
AlbumIDアルバムID
GenreIDジャンルID
Time曲時間
Rating曲の評価
Commentコメント

Table:Album

アルバム全体の情報を記録するためのテーブル

AlbumIDPrimary Key
AlbumNameアルバム名
AlbumYomiアルバム名よみ
DiscNoアルバム中の何枚目か
DiskTypeIDディスクタイプID
ArtistIDアーティストID
ReleaseDateリリース日
TotalTrackアルバムのトラック総数
TotalTimeアルバムの全時間
Commentコメント
asinAmazonとの連携*1

Table:Artist

アーティスト情報を記録するためのテーブル

ArtistIDPrimary Key
ArtistNameアーティスト名
ArtistYomiアーティスト名よみ
URIオフィシャルサイトURI
Commentコメント

Table:DiskType

8cmシングルとかベストアルバムとかのディスク種別を記録するためのテーブル

DiskTypeIDPrimary Key
DiskTypeディスクタイプ

Table:GenreID

J-POPとかのジャンル情報を記録するためのテーブル

GenreIDPrimary Key
Genreジャンル

とりあえずこんなところか?
作り始めてからテーブル構造を変えたくないのでもう少し検討するつもり。

*1 : 将来的に画像表示などができればいいなぁ

2006/07/04(火)Webアプリの開発 (2)

「(歌い手が)頑張っている歌リストw」を作ってくれという要望があった。
これは自分が使いたい「好きな曲リスト」を作れば応用可能だと思う。

とりあえず曲リストを登録可能なシステムを作ってみるか…

入力可能な項目として
  • タイトル
  • アーティスト名
  • アルバム名(収録元)
  • 備考
あたりがあればいいかな。何か追加して欲しいものがあれば開発を始める前にコメントで。

2006/07/03(月)Webアプリの開発 (1)

なんかをやろうかと考えています。
開発環境はApache2 + PHP5 + PostgreSQLあたりを利用して。
とりあえず作ろうかと考えているWebアプリはこんな感じ。
  • 蔵書管理システム
  • CD管理システム
  • カレンダー作成
  • 辞書

蔵書管理

入力できる項目として
  • タイトル
  • タイトルのよみ
  • 筆者/作者
  • 筆者/作者のよみ
  • 出版社
  • 巻数
  • 備考
その他
  • 検索機能
  • モバイル(i-mode)対応

CD管理

入力できる項目として
  • ID3タグで入力可能な項目
その他は蔵書管理に準じる

カレンダー作成

指定できる項目
  • 年/月
  • 日曜始まりか月曜始まりか
  • カレンダーの幅(px)
  • カレンダーの高さ(px)
  • バックグラウンドに画像を指定可能
せりかのアルバムのプラグインとして作ってもいいかも。

辞書

ユーザが自由に登録・編集可能な辞書
旧式のコンピューター用語辞書に触発されました。
記事の多さなどはWikipediaにはとうてい敵いませんので、客観性よりも主観で語るような辞書を作ったらおもしろいのではないかと思います。

とりあえず一番最初に登録する項目は「JISかな入力」あたりでしょうかw