Sybase获取动态sql语句返回值

来源:互联网 发布:赵薇被泼粪事件,知乎 编辑:程序博客网 时间:2024/06/05 04:27

最近遇到个需求,要获取动态sql的返回值,由于Sybase并没有像Sqlserver一样有sp_executesql这样的存储过程,在网上找了很久并没有找到相关的解决方法。

最终我绕了点远路还是把它解决了。下面是我的做法:

CREATE TABLE    test    (        id INT NOT NULL IDENTITY,        name VARCHAR(20) NOT NULL    );

create procedure my_proc(@sql varchar(256))ASBEGINexec(@sql)end

declare @id int,@sql nvarchar(1000),@nid varchar(10)set @sql = 'insert into test(name) values(''Json'') 'set @sql = @sql+ 'select @@IDENTITY'execute @id=my_proc @sql     ---就是这里了,可以用变量去接存储过程的返回值set @nid=convert(varchar(10),@id)print @nid

如果你有更好的方法,希望你能告诉我。

0 0