多表更新得到ID

crony 2001-01-28 05:00:00
小弟在开发中碰到了一个难题,为了满足第三范式,需要将顾客的个人信息放到表userinfo中,而顾客的会员卡、购物次数等放入表customers(用personid与userinfo相连),要添加一个新顾客,先要将userinfo的数据写入得到ID(id 为autoinc)得到id后,再将其他信息和ID写入customers,但如果该过程出错,即写入userinfo后,无法写入customers,则给操作无法回滚。在SQL中有相应的解决方法?
...全文
92 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
haor 2001-01-28
  • 打赏
  • 举报
回复
???
用事务控制呀,第一次出错就回滚,为什么你说操作无法回滚呢?想知道你是怎么写的。
liuj0771 2001-01-28
  • 打赏
  • 举报
回复
以sql server 7.0为例:
begin tran
declare @var1 int

insert userinfo .............
set @var1 = @@identity
insert into customer(id) values(@var1)

commit tran

34,873

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧