MySQL触发器将第一个表的数据插入后插入第二个表

标签 mysql triggers

Here are my tables.

Student Table
+++++++++++++++++++++++++++++++++++++++++++++++++++
| s_id |    name     |   lname    | fname    | c_id |
+++++++++++++++++++++++++++++++++++++++++++++++++++
|  1   |     ali     |   ahmadi   | ahmad    |  1   |
|  2   |  Hussain    |   Sharan   | Skekib   |  2   |
|  3   |  Mahmood    | Shekibayee | Jahangir |  1   |
+++++++++++++++++++++++++++++++++++++++++++++++++++

Student_course Table
+++++++++++++++++++++++
| sc_id | s_id | c_id  |
++++++++++++++++++++++
|  1    |  1   |   1   |
|  2    |  2   |   1   |
|  3    |  3   |   2   |
++++++++++++++++++++++

Now I want to have a trigger that:
When I insert new student into `student` table it should insert `s_id` and `c_id` into student_Course
table.
I am quite new to PHP and MySQL; any help will be highly appreciated.
Thanks in advance.

最佳答案

假设 sc_idStudent_course 上自动递增的主键,这可能相当简单

delimiter //
create trigger ins_student_course after insert on Student
for each row 
begin
 insert into Student_course (s_id,c_id) values (new.s_id,new.c_id);
end ;//

delimiter ;

关于MySQL触发器将第一个表的数据插入后插入第二个表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26988531/

相关文章:

mysql - 无法在mysql中使用创建的用户登录

Java和SQL查询: slowness

mysql - 使用单个列对多个表进行内连接,对结果值产生 'multiplier' 影响

mysql - mysql中如何将表列数据添加到另一个类似的列表中

sql - 如何在实际项目中使用数据库触发器?

mysql - 错误 1054 (42s22) : unknown column 'action' in 'field list'

java - MySQL 的 PASSWORD() 函数在 Java 中的实现

mysql错误1442触发器

MySQL IFNULL() 不捕获空值

database - 在 PostgreSQL 触发器函数中使用 pg_notify