CREATE DATABASE IF NOT EXISTS test DEFAULT CHARSET utf8;
USE test;
#创建学生表
CREATE TABLE IF NOT EXISTS student
(
username VARCHAR(50),
PASSWORD VARCHAR(50),
stuid INT PRIMARY KEY AUTO_INCREMENT,
birthday DATE
);
#插入数据
INSERT INTO student(username,PASSWORD,birthday)
VALUES('王二','11111','2016-08-23');
#成绩表
CREATE TABLE IF NOT EXISTS cj
(
num INT AUTO_INCREMENT PRIMARY KEY,
stu_id INT,
stu_name VARCHAR(50),
math FLOAT,
chinese FLOAT,
english FLOAT
);
#触发器
DELIMITER $
CREATE TRIGGER abc
ALTER INSERT ON student FOR EACH ROW
BEGIN
INSERT INTO cj(stu_id,stu_name)VALUES(new.stuid,new.username);
END $
DELIMITER ;
#执行触发
INSERT INTO student(username,PASSWORD,birthday)VALUES
('张三','22222','2016-08-23');
#触发器
DELIMITER $
CREATE TRIGGER bcd
ALTER INSERT ON student FOR EACH ROW
BEGIN
DELETE FROM cj WHERE cj.stu_id=new.stuid;
END $
DELIMITER;
#修改语句
DELIMITER $
CREATE TRIGGER def
AFTER UPDATE ON student FOR EACH ROW
BEGIN
UPDATE cj SET cj.stu_name=old.username WHERE cj.stu_id=old.stuid;
END $
DELIMITER ;
mysql数据库
最新推荐文章于 2024-09-19 19:08:57 发布
这篇博客展示了如何在MySQL中创建数据库、表,并利用触发器进行数据插入和更新操作。通过示例创建了学生表和成绩表,定义了触发器来自动管理数据,包括在学生表插入新记录时同步到成绩表,以及在更新学生表时更新成绩表中的学生姓名。
摘要由CSDN通过智能技术生成