sitemap

RSS地图

收藏本站

设为首页

Oracle研究中心

当前位置:Oracle研究中心 > 开发DBA >

【学习笔记】Oracle存储过程 实现数据表的更新、插入、删除、再插入连接操作

时间:2016-07-02 22:09   来源:Oracle研究中心   作者:惜分飞   点击:

天萃荷净 分享一篇关于Oracle存储过程入门的文章,使用存储过程实现数据表的更新、插入、删除、再插入连接操作

实现的是从回收站还原的功能

整体思路是,先更新所需的档案件号,然后复制到对应的部门表中,然后删除回收站表的数据,再把刚刚到部门表中的据插入到总表中,使得部门的表和总表数据一致

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)

好了,以前是因为自己对存储过程没有入门,写了几个放在上面了,现在感觉对存储过程有了一点状态,不再放存储过程山来了(我感觉特别有意义的除外)



--------------------------------------ORACLE-DBA----------------------------------------

最权威、专业的Oracle案例资源汇总之【学习笔记】Oracle存储过程 实现数据表的更新、插入、删除、再插入连接操作

本文由大师惜分飞原创分享,网址:http://www.oracleplus.net/arch/686.html

Oracle研究中心

关键词:

Oracle存储过程

存储过程实现数据表的更新、插入、删除、再插入连接操作

使用存储过程做Oracle数据表循环操作