求三段存储过程!!!在线等!!

来源:百度知道 编辑:UC知道 时间:2024/06/18 05:01:29
我有两个表一个叫Sell,另一个叫Sell_history
Sell表里有一个SellID为自动增长的字段,其他字段无所谓示范一下就行
Sell_history表中有一个parenID的字段应该和Sell里的SellID是同步的

我要用ASP程序将值存入Sell表中,同时要调用存储过程找到刚刚存入的这条记录的SellID然后将这条记录再复制到Sell_history中

其实会了这段其他的就好说了

有没有达人指教一下谢谢了在线等
老板不让用触发器啊我虽然也很想用,但是他说容易出现死锁什么的

我还是想问问要使用存储过程的话如果我更新了Sell表的内容的话
怎么才能获取都更新了那些字段然后自动填入Sell_history
我都忘光了谢谢了啊

create proc Pro_InsertSell_historyID
(
@SellID int--如果你ASP可以返回出来刚插入的ID 那么就用 返回不了 就删除
)
as
insert into Sell_history(parenID) value(@SellID)
如果没又得到SellID
那么就
select top 1 SellID from Sell order by desc
取得最后插入的ID
然后插入就行了

想要标量接受 就声明个接受那个ID就可以了

执行exec Pro_InsertSell_historyID IDzhi
就可以了

用触发器。。
create trigger tr_insert on Sell
for insert
as
begin
declare @id int
set @id=(select SellID from inserted)
insert into Sell_history(parenID) values(@id)
end
执行这段代码后,你添加A表的时候SQL会自动给你添加B表了

那也简单啥,给你思想,具体的不写了。。
SELL表的SELLID不是自增的么?那么最新添加的一条肯定id是最大的。所以你先到A表查到最大id的那条不就成了么,然后把id插入到B表。。

在asp程序里面开启事务,按步骤调用所有的语句就OK了

select @@identity from Sell