微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

无法在SUM函数上将变量'MSG'设置为'NULL'的值

如何解决无法在SUM函数上将变量'MSG'设置为'NULL'的值

我的触发功能一个简单的过程。

BEGIN


SET @a := (SELECT SUM(transaksi_alat_pinjam_detail.jumlah_kembali) FROM transaksi_alat_pinjam_detail where transaksi_alat_pinjam_detail.no_peminjaman = OLD.no_peminjaman group by transaksi_alat_pinjam_detail.no_peminjaman);
SET @b = (SELECT jumlah_pinjam FROM transaksi_alat_pinjam where no_peminjaman = OLD.no_peminjaman );

SET @alat_1 = (SELECT nama_alat FROM alat where id_alat = OLD.id_alat limit 1);
SET @nama_1 =  (SELECT nama FROM user where id_user = OLD.id_user limit 1);
SET @nama_kondisi_1 =  (SELECT nama_kondisi FROM m_kondisi where id_kondisi = NEW.kondisi_akhir limit 1);
set @kond = IFNULL(OLD.kondisi_akhir,0);

SIGNAL sqlSTATE '45000'
        SET MESSAGE_TEXT = @a;
END;

我试图在@a内设置变量,但返回值始终为null。我很确定数据不是null,但是为什么返回值总是说它为null?

错误消息看起来像这样。

> 1231 - Variable 'MESSAGE_TEXT' can't be set to the value of 'NULL'
> Time: 0.209s

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。