douxian0008
2014-06-16 05:52
采纳率: 0%
浏览 41
已采纳

查找多个插入查询的auto_increment值

I have a form to enter a student's name and his marks.


I have two tables :

student

student_id | student_name
         1 | John
         2 | Doe

marks

student_id | mark
         1 | 80
         2 | 90

The Student Name field has an autocomplete function which checks the student table if the student already exists.

Now, if I type J in the Student Name field in the form, it shows John. If I click John, and then enter a mark(say 50) in the Mark field and submit the form, the student table remain untouched, while the marks table gets inserted with a new row (1 | 50), where 1 is the student_id of the selected student (In this case, id of John).

Now, if I type a new name (say, Rae) in the Student Name field, and some mark(say 75) in the Mark field, both tables should get inserted with a new row on form submit. i.e., student table should now have a new row (3 | Rae) and marks table should have a new row (3 | 75)

MY PROBLEM IS, since student_id is an auto_incremented value from student, the student_id field in the marks table get a value 0 while entering a new student (In this case, Rae), which insert the row as (0 | 75) instead of my requirement (3 | 75).

As far as I know, mysqli_insert_id() can be used here, but I'm using three insert statements in a go. The above mentioned two insert queries are second and third. The auto_increment value from the first insert is being used for some other purpose using the mysqli_insert_id() command.

图片转代码服务由CSDN问答提供 功能建议

我有一个表格可以输入学生的姓名和他的分数。


我有两张桌子:

学生

  student_id |  student_name 
 1 | 约翰
 2 |  Doe 
   
 
 

标记

  student_id | 标记
 1 |  80 
 2 |  90 
   
 
 

学生姓名字段具有自动完成功能,可检查学生表格,如果学生已经存在。

现在,如果我在表单的学生姓名字段中输入 J ,它会显示 约翰。 如果我单击John,然后在标记字段中输入标记(例如50)并提交表单,学生表保持不变,而标记< / strong> table插入一个新行(1 | 50),其中1是所选学生的 student_id (在本例中为John的id)。

现在,如果我在学生姓名字段中输入新名称(例如,Rae),并在标记字段中输入一些标记(例如75),则两个表格 应该在表单提交时插入一个新行。 即,学生表现在应该有一个新行(3 | Rae),标记表应该有一个新行(3 | 75)

我的问题是,因为 student_id 是来自学生的auto_incremented值,标记中的 student_id 字段 表输入新学生时得到一个值0(在本例中为Rae),将行插入(0 | 75)而不是我的要求(3 | 75)。

As 据我所知,mysqli_insert_id()可以在这里使用,但我一直在使用三个插入语句。 上面提到的两个插入查询是第二和第三。 使用mysqli_insert_id()命令将第一个插入的auto_increment值用于其他目的。

  • 写回答
  • 好问题 提建议
  • 追加酬金
  • 关注问题
  • 邀请回答

1条回答 默认 最新

相关推荐 更多相似问题