私はそれが良いと聞いて私のデータベースのテーブルの約を制限しようとしています(私は初心者のWeb開発者です)。私はユーザーがデータベースにリストを入力させたいと思っています。そこで、彼らはタイトル、全体的なコメントを入力して、リストを作成し始めます。私はどのように各リストのための新しいテーブルを作成せずにこれを行う方法を把握することはできません。たとえば、あるユーザーが44の値を持つリストを希望し、別のユーザーが10の値のリストを希望しているとします。私は各リストのための新しいテーブルを作ることなくこれを行う方法を考えることができません。私はあなたに私に与えることができる助け/洞察力に本当に感謝します。SQLデータベースの設計の助けが必要
2
A
答えて
5
基本的に、ユーザーリスト用のテーブルを作成する場合、テーブル内の各行は1つのユーザーのリストを参照し、別のテーブルはユーザーリスト値用です。ここで、テーブル内の各行には参照用の列がありますそれが属するリストと、ユーザーが入力した値の列。
0
あなたの表は次のようになります。 ユーザーID、 ListIDをint型、int型(主キー、一意識別子) タイトル、VARCHAR(250) コメント、VARCHAR(MAX)
Example Content:
1 | 1 | The Title | My Comment
1 | 2 | The Other Title | My other comment
2 | 3 | First Comment | Second Person, first comment
Eacherユーザーはちょうど彼らを取得しますクエリからリスト:
選択ListID、TITEL、ユーザーID = @UserID
0
あなたが単一で逃げることができthe_Table からのコメントすべてのリストの行のテーブル、になってリストのテーブルで、たとえば単に
CREATE TABLE ListLines (
listID INTEGER,
lineNo INTEGER,
line TEXT,
PRIMARY KEY (listID, lineNo),
FOREIGN KEY (listID) REFERENCES Lists
);
を言う:
CREATE TABLE Lists (
listID INTEGER PRIMARY KEY,
userID INTEGER,
title TEXT,
comment TEXT,
FOREIGN KEY (userID) REFERENCES Users
);
あなたは、ユーザーごとの情報を主キーuserID INTEGER
でUsers
テーブルを持っていると仮定すると(名、等)。だから、そのID与えられたリストのすべての行にあなただけの
SELECT line FROM ListLines
WHERE listID=:whateverid
ORDER BY lineNo;
またはあなたを得るために
できUNIONは、例えばとタイトル:
SELECT title AS line FROM Lists
WHERE listID=:whateverid
UNION ALL
SELECT line FROM ListLines
WHERE listID=:whateverid
ORDER BY lineNo;
などです。この柔軟で効率的な配置は、物事を行うリレーショナルな方法です...
関連する問題
- 1. 質問/データベース設計のリファクタリングの助けが必要
- 2. トップ10のデータベース設計の助けが必要
- 3. フレンドシップリクエストSQLテーブルの設計の助けが必要
- 4. mysqlデータベースの設計に助けが必要
- 5. ゲーマーの評価計算のためのデータベース/クエリ設計の助けが必要
- 6. SQLステートメントを設計する際に助けが必要
- 7. データベース構築の手助けが必要
- 8. Rickshaw - ライン+バートグルチャートを設計するのに助けが必要
- 9. SQLレポートでdatediffを設定するのに助けが必要
- 10. ソーシャルネットワークサイトのデータベース設計。助けて!
- 11. 学校データベースの設計が必要
- 12. スキームプログラミングの助けが必要
- 13. コールメソッドの助けが必要
- 14. dp4jの助けが必要
- 15. Imacrosの助けが必要
- 16. QualtricsへのJavascript計算の実装の助けが必要
- 17. Python UnboundLocalError "助けが必要"
- 18. XQuery - 助けが必要
- 19. CryptoJS.SHA256助けが必要
- 20. javascriptで助けが必要
- 21. 私が助けを必要
- 22. 加速度計のコードを理解する助けが必要
- 23. 助けが必要です、Pythonを書くBMIの計算
- 24. システムの設計に関する助言が必要
- 25. このSQLクエリを理解するのに助けが必要
- 26. 統計のデータベース設計のアドバイスが必要
- 27. データベース機能 - 初心者の助けが必要なハスケル!
- 28. データベースの作成に手助けが必要
- 29. MyBatisがひどいデータベース設計で動作するように助けが必要
- 30. django-filetransfersの設定の手助けが必要