做一个带数据库系统,要求删除修改记录时能还原(不是删除前确认,而是删除后还原),初步想法是点删除后提交一个删除事务,然后如果马上点还原,就进行还原,滚回事务,否则离开页面后事务被自动提交,请教怎么写这个程序?用存储过程怎么写?
解决方案 »
- 求一个简单的存储过程
- sql server 2005 订阅的sqlserver的时候,查找sql server服务器步骤出错?
- SQL 字段连接
- 在oracle 中怎么样把日期变换成'yy/m/d'的形式!!
- 有关TEMPDB问题
- 关于使用(bulk insert )导入考勤数据问题
- 两个表关联的问题
- 安装sql的错误提示:Command line option syntax error. Type Command/? for Help.
- 如何将只有一条记录的临时表的某字段值赋于一变量?
- 求救!!!vfp ,控件 optiongroup1, 属性 ButtonCount=N,如何给第N个OPtionN.Caption赋值
- 怎样将数据库置为offline ?
- ssis的问题
--删除代码--还原
rollback tran--提交
commit tran
问题是点击一个按钮只能执行一个存储过程,而事务在一个存储过程里必须提交或者滚回,不能最后挂着.所以很难响应事件
--------------------------------------
那就建个删除触发器,将deleted表内容存至日志表,还原的时候从日志表再转回来.
select top 1 * into 删除日志表 from 原表 where 1=2
go--建立删除触发器,将删除的数据存至删除日志表
create trigger td_原表 on 原表
for delete
as
truncate table 删除日志表
insert into 删除日志表
select * from deleted
go--还原代码
insert into 原表
select * from 删除日志表--上面的代码功能是实现还原最后一次删除操作.