Sql 使用FOR XML的EXEC查询
当执行上述查询时,在sql中的关键字“for”附近声明不正确的语法,这会给我带来一个错误Sql 使用FOR XML的EXEC查询,sql,sql-server,sql-server-2012,Sql,Sql Server,Sql Server 2012,当执行上述查询时,在sql中的关键字“for”附近声明不正确的语法,这会给我带来一个错误 任何帮助都将不胜感激。以下是我将如何解决这一问题: :XML ON EXEC sp_helprolemember FOR XML PATH, ROOT ('ResultSetData'),BINARY BASE64; 我认为不能将FOR XML添加到exec proc命令中。您必须创建一个临时表,将过程的结果插入临时表中,最后使用FOR XML从tamporary table中进行选择。 DECLARE
任何帮助都将不胜感激。以下是我将如何解决这一问题:
:XML ON
EXEC sp_helprolemember FOR XML PATH, ROOT ('ResultSetData'),BINARY BASE64;
我认为不能将FOR XML添加到exec proc命令中。您必须创建一个临时表,将过程的结果插入临时表中,最后使用FOR XML从tamporary table中进行选择。
DECLARE @Results TABLE(DbRole VARCHAR(20)
, MemberName VARCHAR(20)
, MemberSID VARCHAR(50));
INSERT INTO @Results
EXEC sp_helprolemember 'your role name herer';
SELECT *
FROM @Results
FOR XML PATH, ROOT('your root name here'), BINARY BASE64;