比如我要更新table_user表中的 num列内容 并同时返回name列内容
这个存储过程该怎样写?@@identity 这个系统参数我知道 但它返回的是id的值 我要其他列的值 该怎么写 有没有什么其他系统参数可以解决我的问题

解决方案 »

  1.   


    --?
    create proc p_1
    as
    update tb
    set num=your_val
    where ......
    select name from tb where ...
    go
      

  2.   


    --? 
    create proc p_1(@val varchar(20))
    as 
    update tb 
    set num=@val
    where ...
    select name from tb where ... 
    go
      

  3.   

    --参考 适用2005以后版本update 
    score
    set 
    score=a.score+isnull(b.score,0)
    output
    deleted.user_game_id,
    deleted.score score_old,
    inserted.score score_new into score_history(user_game_id,score_old,score_new)
    from 
    score a
    inner join 
    pcbar_ss_session_history_score b
    on a.user_game_id=b.user_game_id