跳至主要內容
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?

4563博客

全新的繁體中文 WordPress 網站
  • 首頁
  • 求教一个 mysql 跨表同步问题
未分類
4 9 月 2020

求教一个 mysql 跨表同步问题

求教一个 mysql 跨表同步问题

資深大佬 : chensong004 3

不是程序员,遇到个问题不知道该怎么解决,请教各位大神帮忙解决。
背景:使用一个 OA 系统,可以自定义模块,只是简单增删改查,业务代码不好二次开发。
问题:有两个数据表表 A 和表 B,表 A 为姓名,学号;表 B 为姓名,学号,成绩。
需求:表 B 插入一行数据(学号,成绩),自动根据表 A 对应的姓名将表 B 中的姓名填写。业务代码没办法修改,需要在数据库中实现。
尝试:试着用触发器 after insert 处理,update A,B set B.name =A.name where B.cardid = A.cardid and B.id = new.id ,会造成循环调用,报错。
大佬有話說 (2)

  • 資深大佬 : ll1615

    DELIMITER $$
    CREATE TRIGGER `test`.`tableb_BEFORE_INSERT` BEFORE INSERT ON `tableb` FOR EACH ROW
    BEGIN
    SET @name = (SELECT name FROM tablea WHERE NEW.aid = tablea.id);
    SET NEW.name = @name;
    END$$
    DELIMITER ;

  • 主 資深大佬 : chensong004

    @ll1615 感谢大佬!之前尝试过直接 set new.name=(select……)这种形式会报错,原来用变量中转下就可以了,谢谢。

文章導覽

上一篇文章
下一篇文章

AD

其他操作

  • 登入
  • 訂閱網站內容的資訊提供
  • 訂閱留言的資訊提供
  • WordPress.org 台灣繁體中文

51la

4563博客

全新的繁體中文 WordPress 網站
返回頂端
本站採用 WordPress 建置 | 佈景主題採用 GretaThemes 所設計的 Memory
4563博客
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?
在這裡新增小工具