5个回答
2013-07-23
展开全部
希望对你有帮助if exists(select 1 from sysobjects where name='proc_insert')
drop procedure proc_insert
gocreate procedure proc_insert
@number2 varchar(20),
@number3 varchar(20)
as
begin transaction
declare @errornum int,@number varchar(30)
set @errornum=0 insert into tb1 values(@number2,@number3) set @errornum=@errornum+@@error
set @number=@number2+CONVERT(varchar(20),@@identity) --CAST(@@identity AS varchar(30)) insert into tb2 values(@number,@number3)
set @errornum=@errornum+@@error if @errornum<>0
begin
rollback transaction
end
else
begin
commit transaction
end
goexec proc_insert 'qwe','123'
drop procedure proc_insert
gocreate procedure proc_insert
@number2 varchar(20),
@number3 varchar(20)
as
begin transaction
declare @errornum int,@number varchar(30)
set @errornum=0 insert into tb1 values(@number2,@number3) set @errornum=@errornum+@@error
set @number=@number2+CONVERT(varchar(20),@@identity) --CAST(@@identity AS varchar(30)) insert into tb2 values(@number,@number3)
set @errornum=@errornum+@@error if @errornum<>0
begin
rollback transaction
end
else
begin
commit transaction
end
goexec proc_insert 'qwe','123'
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-07-23
展开全部
如果使用oracle9i就可以,例如:insert all
into insert_all_test1 values(no,name)
into insert_all_test2 values(no,sal)
select empno no,ename name,sal from scott.emp;
into insert_all_test1 values(no,name)
into insert_all_test2 values(no,sal)
select empno no,ename name,sal from scott.emp;
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-07-23
展开全部
标准之所以叫做T-SQL,因为这个T指的是事务处理。SO,要在存储过程里配合事务处理来做。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-07-23
展开全部
为什么不分开执行?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-07-23
展开全部
这个可以使用触发器完成
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询