对此存储过程进行功能说明

图片说明

就是把自然数的卡号每65536个分成一个批次。
存储过程输入批号prmbatnum,返回该批次中下个可用的卡号prmcardno
base_customers是已使用的卡号明细。
base_batnum记录每个批次的最大已使用卡号。
如果调用存储过程所得到的卡号不写到表base_customers中,下次再调用会分配一样的卡号。

这段代码就是根据参数取卡号的一个过程,中间判断了如果卡号已经存在,就把最大号加1

调用proc_getcardno 传2个参数;
根据prmbatnum查询表的cardnum 赋值给prmcardno
判断prmcardno是否等于0或null这赋值1
判断prmcardno使用大于最大数不是加1是报错
查询 cardno等于 prmcardno+prmbatnum*65536的的记录数赋值vcount
判断vcount
后面的你都有讲解了