Table of ContentsPreviousNext

Ispirer             Ispirer


Ispirer SQLWays数据库迁移软件

执行动态SQL语句有参数

本款描述参数化的动态SQL语句的执行在各种各样的数据库和它们的转换由SQLWays。

表格 41。 执行动态SQL语句有参数
Database
Syntax
Description
Microsoft SQL Server
EXEC [UTE] sp_executesql  
N'dynamic_compound_string' | 
@dynamic_statement         [  
 N'param_defined_string' | 
dynamic_param_definition                                  
[@param1=]value1 
[,[@paramN=]valueN]... 
] 
EXECUTE语句与sp_executesql执行SQL语句包括动态复合语句。动态复合语句可以包含嵌入式参数。
 
参数
 
N'dynamic_compound_string' | @dynamic_statement - 可执行的SQL语句,可以被定义为一个字符串或变量。
 
N'param_defined_string' | dynamic_param_definition - 字符串或变量,指定输入参数为可执行的SQL语句。
 
 
每个参数标识包含参数的名称和它的数据类型。缺省值为参数是NULL
 
[@param1=] value1 是参数的值。值可以是常或变。必须有一个值指定为每一个 参数包括的在动态语句。
 
Example:
下面语句执行参数化的动态select语句与输入参数:
execute sp_executesql           N'select * from tab1 where col1 = 
@param', 
N'@param int', 
@param = 35 
Oracle
EXECUTE IMMEDIATE 
dynamic_string 
   [ INTO { ret_value1 [, 
retvalueN]... | record_name} ] 
   [ USING [ {IN | OUT | IN OUT} ] 
value1, [,valueN]...]; 
EXECUTE IMMEDIATE语句执行动态SQL语句在Oracle
 
参数
dynamic_string - 可执行的SQL语句,可以定义如同字符串,变量或表达式。输入参数是标记为 :N,N 是参数数在USING子句。
 
ret_valueN, record_name - INTO语句指定变量或记录为检索列值。INTO子句使用只有为单行查询。
 
[ IN | OUT | IN OUT ] valueN - USING子句指定参数的输入- 输出的列表。默认情况下,valueN是IN参数。
 
例如
下面例如执行动态复合插入语句与输入参数:
 
sql_dString := 'INSERT INTO tab1 VALUES (:1, :2, :3)';
EXECUTE IMMEDIATE sql_dString USING 77, 21, variable1;


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