Table of ContentsPreviousNext

Ispirer             Ispirer


Ispirer SQLWays数据库迁移软件/h1>

从Microsoft SQL Server到Oracle赋值语句的转换

SQL Server SELECT | SET @local_variable赋值语句允许指定子查询分配一个值到变量,当 Oracle赋值语句(:=)不允许指定子查询。

a) 视图是如何视图,除了标量子查询。

既然这样,SQLWays转换SELECT和SET子句到Oracle赋值语句(:=)。

例如

表格 30。 视图是如何视图,除了标量子查询
Microsoft SQL Server
Oracle
SELECT @A=5+7 
v_A:=5+7; 
SET @B='String' 
v_B:='String'; 

b) 视图是标量子查询。

如果SQL Server视图是标量子查询,SQLWays转换SELECT 和 SET子句到Oracle SELECT INTO 语句,并允许分配SQL查询结果到变量。

例如

表格 31。 视图是标量子查询
Microsoft SQL Server
Oracle
SELECT @D = (SELECT col1 FROM tab1) 
SELECT col1 INTO v_D FROM tab1; 
SELECT @C = (SELECT col2 FROM tab2) 
SELECT col2 INTO v_C FROM tab2; 

c) SELECT | SET包括数个赋值字句。

SQL Server SELECT @local_variable赋值语句可以包括数个数个当Oracle允许只有一个赋值。如果SQL Server SELECT包括多重的赋值,SQLWays转换它们到括多重的赋值语句在Oracle。

例如

表格32。 SELECT | SET包括数个赋值字句
Microsoft SQL Server
Oracle
SELECT @E = (SELECT col3 FROM tab3), 
@G = 9.8 
SELECT col3 INTO v_E FROM tab3;
v_G:=9.8; 
SELECT @F= (SELECT col4 FROM tab4), 
@H= (SELECT col5 FROM tab5)	 
SELECT col4 INTO v_F FROM tab4;
SELECT col5 INTO v_H FROM tab5;  
SELECT @K = `Test string',
@L = 10 
v_K:= `Test string';
v_L:=10; 


Table of ContentsPreviousNext
Ispirer             Ispirer
版权 © 1999-2015 Ispirer Systems Ltd. Ispirer和SQLWaysIspirer Systems Ltd的品牌。所有其他产品名称可能是其各自公司的商标。版权所有。