0

私はmySQLが初めてです。2 つのテーブルから結合テーブルを作成しました。

students
===============================
id(auto)
name

homeworks
===============================
id(auto)
description

students_homeworks
===============================
idStudentHomework(auto)
idStudent
idHomework

学生は私のウェブサイトのフォームに記入し、名前と宿題の説明を提供する必要があります。私の知る限り、PHPコードでデータベースにクエリを実行し、それぞれのテーブルにstudent.nameとhomework.descriptionをINSERTする必要があります。ですが、students_homeworks テーブルを埋めるにはどうすればよいですか? 2 つのテーブルを再度クエリして ID を見つけ、結合テーブルに入力する必要がありますか? (私はそれをグーグルで調べましたが、結合テーブルとSQL JOINコマンドを作成する方法を見つけました)

4

3 に答える 3

2

生徒 ID と宿題 ID が自動インクリメントの場合、関数LAST_INSERT_ID を使用して、以前に挿入されたレコードの ID を特定できます。

于 2012-07-03T06:42:20.443 に答える
0
1. insert into student(name) values ('john')
2. select max(id) from student
3. insert into homeworks(description) values ('maths')
4. select max(id) from homeworks
5. insert into students_homeworks (idStudent, idHomework) values(1, 1)
于 2012-07-03T06:44:24.230 に答える
0

宿題の説明がユーザーによって入力されたテキストボックスの場合。別のテーブルを作成する必要はありません。

ユーザーに固定値(ドロップダウンリストなど)がある場合にのみ、個別の宿題の説明を作成します。

于 2012-07-03T06:45:21.123 に答える