create procedure pro_1
@xml xml output
as
begin
set @xml = (select * from table_a for xml path('data') end/*
测试
declare @str xml
exec pro_1 @str outputprint convert(varchar(max),@str )
*/
@xml xml output
as
begin
set @xml = (select * from table_a for xml path('data') end/*
测试
declare @str xml
exec pro_1 @str outputprint convert(varchar(max),@str )
*/
1,
sql2005方便,如楼上所述了。sql2000麻烦些。你昨天不是问过了吗?
http://topic.csdn.net/u/20081021/10/747b1139-c0da-45af-9688-4226c4cffa41.html将这个贴子里的那个表的列类型定义为varchar(8000), 然后从表中select一次就可以加载至变量.2,
存储过程的输出参数 varchar(max)及xml (2005下) 为2G
而返回值只表示过程执行的状态,返回值为int类型,并不存在你所说的所能传递的最大长度是多少个字节的问题。