こんにちは、この場合のデータベースを効果的に作成する方法に少し問題があります。
I. データベース スキーム。
CREATE TABLE IF NOT EXISTS `songs` (
`url` varchar(12) NOT NULL,
`author` varchar(250) NOT NULL,
`name` varchar(255) NOT NULL,
`id` int(11) NOT NULL AUTO_INCREMENT,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=293 ;
CREATE TABLE IF NOT EXISTS `account` (
`id` int(11) NOT NULL,
`login` varchar(15) NOT NULL,
`password` varchar(20) NOT NULL,
`social_fb` varchar(20) NOT NULL,
`social_yt` varchar(20) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
CREATE TABLE IF NOT EXISTS `playlists` (
`id` int(11) NOT NULL,
`accountid` int(11) NOT NULL,
`songs` varchar(10000) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
Ⅱ.イデオロギー。
各ユーザー(アカウント)は複数のプレイリストを持つことができます。プレイリストには、「曲」に id で保存された曲が含まれます。
III. 結論
1) この db スキームがこの種の問題に対して修正されていないことは確かです。song.id をプレイリスト テーブルに取得し、それをユーザーに割り当てる方法がわかりません。私を助けて、それがどのように見えるべきか説明してもらえますか?
2) ユーザーから単一のプレイリストを取得するための可能なクエリ a) ユーザー アカウントに割り当てられたプレイリストの ID を取得します。
御時間ありがとうございます。