实现的是从回收站还原的功能
整体思路是,先更新所需的档案件号,然后复制到对应的部门表中,然后删除回收站表的数据,再把刚刚到部门表中的据插入到总表中,使得部门的表和总表数据一致
ALTER PROC [dbo].[add_data_yes]
@tablename varchar(30),
@id INT,
@jh INT
AS
declare @sql nvarchar(4000)
SET @sql=N'update S_del set jh='+CAST(@jh AS VARCHAR(10))+N' where id='+CAST(@id AS VARCHAR(10))+N';INSERT INTO '+@tablename+N'
( tm ,
jh ,
ajh ,
gjz ,
sjms ,
fsdd ,
fsrq ,
zyrw ,
psz ,
psrq ,
tgz ,
zrz ,
sc ,
ly ,
cjh ,
srz ,
flh ,
dph ,
bz ,
xpdx ,
xpgs ,
xpxs ,
scrid ,
scr ,
scsj ,
scbm ,
shr ,
shsj ,
ecbz ,
gdr ,
gdsj ,
xgsj ,
flag ,
ysurl ,
ysfile ,
xgurl ,
xgfile ,
xwurl ,
xwnr ,
textall
)
SELECT
tm ,
jh ,
ajh ,
gjz ,
sjms ,
fsdd ,
fsrq ,
zyrw ,
psz ,
psrq ,
tgz ,
zrz ,
sc ,
ly ,
cjh ,
srz ,
flh ,
dph ,
bz ,
xpdx ,
xpgs ,
xpxs ,
scrid ,
scr ,
scsj ,
scbm ,
shr ,
shsj ,
ecbz ,
gdr ,
gdsj ,
xgsj ,
flag ,
ysurl ,
ysfile ,
xgurl ,
xgfile ,
xwurl ,
xwnr ,
textall
FROM S_del WHERE id='+CAST(@id AS varchar(10))+N';delete from S_del where id='+CAST(@id AS varchar(10))+N';insert into S_bm_all select * from '+@tablename+N' where id=(select max(id) from '+@tablename+N')'
EXEC(@sql)
好了,以前是因为自己对存储过程没有入门,写了几个放在上面了,现在感觉对存储过程有了一点状态,不再放存储过程山来了(我感觉特别有意义的除外)