56,687
社区成员
发帖
与我相关
我的任务
分享
mysql> create table t_zqaq_520(product_id char(5) primary key default '',col int);
Query OK, 0 rows affected (0.08 sec)
mysql>
mysql> delimiter |
mysql>
mysql> CREATE TRIGGER tr_t_zqaq_520_bi BEFORE INSERT ON t_zqaq_520
-> FOR EACH ROW BEGIN
-> declare max_id int;
->
-> select substring(max(product_id),3) into max_id from t_zqaq_520;
-> if max_id is null then
-> set max_id=0;
-> end if;
-> set max_id=max_id+1;
-> set new.product_id = concat('CP',right(10000+max_id,3));
-> END;
-> |
Query OK, 0 rows affected (0.05 sec)
mysql>
mysql> delimiter ;
mysql> insert into t_zqaq_520 (col) values (1);
Query OK, 1 row affected (0.08 sec)
mysql> select * from t_zqaq_520;
+------------+------+
| product_id | col |
+------------+------+
| CP001 | 1 |
+------------+------+
1 row in set (0.00 sec)
mysql> insert into t_zqaq_520 (col) values (2);
Query OK, 1 row affected (0.06 sec)
mysql> select * from t_zqaq_520;
+------------+------+
| product_id | col |
+------------+------+
| CP001 | 1 |
| CP002 | 2 |
+------------+------+
2 rows in set (0.00 sec)
mysql>