Office中国论坛/Access中国论坛

标题: 一个实现递增的存储过程例子 [打印本页]

作者: zhengjialon    时间: 2003-2-9 17:07
标题: 一个实现递增的存储过程例子
use [改为你的SQL数据库名]
IF EXISTS(select OBJECT_ID('p_ins_alm_msg'))
DROP PROCEDURE p_ins_alm_msg
go

create proc p_ins_alm_msg
    @msg_count     int ='2'/*借用一个参数,随便赋予一个默认文本值*/
as
    select @msg_count = value from common_info where name = 'msg_count'/*首先选出新增记录应填写值*/
    update common_info set value = @msg_count+ 1 where name = 'msg_count' and value = @msg_count
                                  /*在本条记录上让新增记录应填写值加1,用于将来(更下一条记录)*/
        if @@rowcount = 0/*如果更新不成功,则返回失败(-1000)*/
            return -1000
    insert into common_info (name)/*插入新记录的值,用参数替代*/
    values(@msg_count)
    return 0
GO
exec p_ins_alm_msg


/*以下是创建本存储过程必须的表的脚本
create table common_info(
name varchar(10),
value int)
insert into common_info values('msg_count', 100)*/




欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3