oracle如何保证一列中,一个值的唯一性
nameagestatus张三150李四501王二361我想在给张三设置状态=1的同时,更新表中所有status=1的人让他们status=2,只保证这一列中只有1个人状...
name age status
张三 15 0
李四 50 1
王二 36 1
我想在给张三设置状态=1 的同时,更新表中所有status=1的人让他们status=2,只保证这一列中只有 1个人状态=1
只在oracle中做,不在程序中做
解决了还会加分 展开
张三 15 0
李四 50 1
王二 36 1
我想在给张三设置状态=1 的同时,更新表中所有status=1的人让他们status=2,只保证这一列中只有 1个人状态=1
只在oracle中做,不在程序中做
解决了还会加分 展开
1个回答
展开全部
--思路做个存储过程就行,取名UpdateStatus,执行这个存储过程,传参就是这个人名,
--第一步,给所有status=1的人update成status=2,
--第二步,给name=参数的人,update status =1
--然后你只需要exec UpdateStatus这个存储过程,代码如下
create procedure UpdateStatus(@name varchar(20))
as
Begin
update tablename set status =2 where status =1
update tablename set status =1 where name =@name
Exception
When others then
Rollback;
End;
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询