相当于Sybase中的sp_executesql

时间:2011-04-15 18:37:14

标签: sybase

与sybase中的Sql Server的sp_executesql相同的是什么。

3 个答案:

答案 0 :(得分:2)

答案 1 :(得分:1)

@jasir:过程定义导致255个字符的限制。不能通过定义例如来扩展此限制。 VARCHAR(1024)?

ASE Refrence手册15.7(http://infocenter.sybase.com/help/index.jsp?topic=/com.sybase.infocenter.dc36272.1572/html/commands/X30305.htm) 命令执行的状态:

  

string是包含Transact-SQL命令的一部分的文字字符串   执行。 对字符数没有限制   提供文字字符串。

然而,有时在sybase之上的系统(例如Kondor +,金融市场的产品使用ASE 15.x作为DB)可能会设置限制。在这个Kondor +中无法使用

exec( @SQLQuery) 

在所谓的OpenReport(存储过程)中,如果变量@SQLQuery超过256个字符。

答案 2 :(得分:0)

对于较旧的ASE,您可以使用此解决方法:

存储过程sp_remotesql。 您也可以使用它在本地服务器上运行查询,只需要本地服务器到服务器:

sp_addserver local, NULL, <servername>

其中<servername>是本地服务器的名称(来自sql.ini)。

您可以添加运行sql的快捷程序:

create procedure sp_exec_dynsql @p_cmd varchar(255)
as
begin
   exec sp_remotesql "local", @p_cmd
end

不幸的是,你的sql中限制为255个字符。