• WAP手机版 RSS订阅 加入收藏  设为首页
当前位置:首页 > 服务器数据恢复

Oracle与MSSQL过程之间的转化

时间:2016-12-14 16:48:37  作者:  来源:  浏览:0  评论:0
内容摘要:以下面两个过程为例。两者的功能相似。1.MSSQL脚本1/** 更改表名 **/ 2 Begin 3declare @tempPoTableName varchar(50)--性能对象表名 4declare @tempPoSpName varchar(50)--性能过程名 5declare @errorInfo var...
以下面两个过程为例。两者的功能相似。

1.MSSQL脚本
1 /** 更改表名 **/
2 Begin
3 declare @tempPoTableName varchar(50) --性能对象表名
4 declare @tempPoSpName varchar(50) --性能过程名
5 declare @errorInfo varchar(200) --错误信息
6 declare @cnt int --计数器
7
8 declare @tempSQL varchar(1000)
9
10 --定义表名、同步表名和存储过程游标
11 set @tempSQL = ' declare allValues_Cursor cursor for ' CHAR(13) CHAR(10)
12 set @tempSQL = @tempSQL ' select POTABLENAME,POSPNAME from PM_NEPODEF_TABLE WHERE POID>110499 and POID<110580'
13 EXEC (@tempSQL)
14
15 OPEN allValues_Cursor
16
17 --判断是否由符合游标条件的行,如果没有则关闭和释放游标,异常返回
18 IF(@@CURSOR_ROWS = 0 )
19 BEGIN
20 CLOSE allValues_Cursor
21 DEALLOCATE allValues_Cursor
22 set @errorInfo = '没有指定表名或存储过程名!'
23 print @errorInfo
24 return
25 END
26
27 print '开始更改原有表名……'
28 FETCH NEXT FROM allValues_Cursor INTO @tempPoTableName,@tempPoSpName
29 --根据给定的表名、存储过程名 创建相应的数据存储存储过程
30 WHILE (@@FETCH_STATUS <> -1)
31 BEGIN
32 print @tempPoTableName
33
34 IF (EXISTS (SELECT name from sysobjects WHERE name=@tempPoTableName))
35 BEGIN
36 set @tempSQL = 'ALTER TABLE ' @tempPoTableName ' DROP constraint PK_' @tempPoTableName
37 EXEC (@tempSQL)
38 set @tempSQL = @tempPoTableName '_TMP'
39 EXEC Sp_rename @tempPoTableName,@tempSQL
40 END
41 ELSE
42 BEGIN
43 print '没有找到表' @tempPoTableName;
44 END
45
46 IF (EXISTS (SELECT name from sysobjects WHERE name=@tempPoSpName))
47 BEGIN
48 set @tempSQL = 'DROP PROCEDURE ' @tempPoSpName;
49 EXEC (@tempSQL)
50 END
51 ELSE
52 BEGIN
53 print '没有找到过程' @tempPoSpName;
54 END
55
56 FETCH NEXT FROM allValues_Cursor INTO @tempPoTableName,@tempPoSpName
57 END
58 CLOSE allValues_Cursor
59 DEALLOCATE allValues_Cursor
60 print '结束更改原有表名……'
61 print '------------------------'
62 END
63 GO


2.ORACLE脚本

1 BEGIN
2 DECLARE
3 tempPoTableName varchar2(50); --性能对象表名
4 tempPoSpName varchar2(50); --性能过程名
5 errorInfo varchar2(200); --错误信息
6 tempSQL varchar2(1000);
7 cnt1 number(1);
8 cnt2 number(2);
9
10 --定义表名、同步表名和存储过程游标

相关评论
不良信息举报中心成都网警网警110报警服务AAA级互联网行业信用360网站安全检测

数据恢复QQ交流群:378664983    站长QQ:958754010

蜀ICP备14015947号-2