php - Mysql触发器和插入值

标签 php mysql

我尝试在将值插入表 ec3_checking 之前设置触发器,如果​​ id_count 的最高值为 (n-1),则触发器的函数会将“account_id”设置为“CH-n” ),id_count是一个auto_increment参数。

delimiter //
CREATE TRIGGER account_id_add BEFORE INSERT ON `ec3_checking`
FOR EACH ROW
BEGIN
        DECLARE anum int;
        DECLARE bnum int;
        SET bnum =  max(id_account);
        SET anum = bnum + 1;
        SET NEW.account_id =  concat('CH-', anum);
END//

然后我尝试将一些值插入表中

insert into `ec3_checking` (balance, overdraft_limit)
VALUES
('300','50');

出现错误:1111,群组功能使用无效,有人可以帮助我吗? 非常感谢。

最佳答案

CREATE TRIGGER `account_id_add` BEFORE INSERT ON `ec3_checking` 
FOR EACH ROW BEGIN
    DECLARE anum int;

    SET @bnum = (SELECT max(id_account) FROM ec3_checking);

    SET anum = @bnum + 1;
    SET NEW.account_name =  concat('CH-', anum);
END

关于php - Mysql触发器和插入值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47622047/

相关文章:

php - try catch block 中的未捕获错误

php - 获取每一行的递归深度

java - MySQL 和 Java : Difference between fetch size and batch limit

mysql - apt-get 更新操作卡在 0 显示 0% [工作中]

php - 如何使用 RedBean 运行 LIKE %..% 查询

php按字符串多维度排序

php - SQL Select Join with a limit in Laravel/PHP

php - 尝试使用子查询将数据插入字段

php - 在 Codeigniter 中根据当前月份的日期获取 MySQL 结果

c# - 如何在 C#.Net 中使用 MySQL 时摆脱 "Empty Path is not valid "错误