Sql server MSSQL为XML打印消息

Sql server MSSQL为XML打印消息,sql-server,xml,tsql,xquery,mssql-jdbc,Sql Server,Xml,Tsql,Xquery,Mssql Jdbc,如果存在一个表,我会尝试检查我的数据,并从我的语句中获取XML格式的打印输出 为此,我尝试了以下代码: IF ( EXISTS ( SELECT * FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA = 'dbo' AND TABLE_NAME = 'TABLE_NAME_I' ) ) BEGIN PRINT 'Table allready e

如果存在一个表,我会尝试检查我的数据,并从我的语句中获取XML格式的打印输出

为此,我尝试了以下代码:

IF (
    EXISTS (
        SELECT *
        FROM INFORMATION_SCHEMA.TABLES
            WHERE TABLE_SCHEMA = 'dbo'
            AND TABLE_NAME = 'TABLE_NAME_I'
    )
) BEGIN
    PRINT 'Table allready exists in database'
    FOR XML AUTO
END;
但我唯一能想到的是:

Database operation failed: Incorrect syntax near the FOR keyword.
我还尝试在
PRINT'Table allready exists in database'
前面为XML AUTO设置
,但结果是相同的

我使用JDBC连接器来实现连接和输出

我的项目可能吗?或者我必须将它与其他东西结合起来才能实现这一点吗

提前谢谢你的帮助

更新
我现在也试过了

SET @string = '<MESSAGE>Table allready exists in database</MESSAGE>';
SET @xml = CONVERT(XML, @string);
SELECT @xml;
SET@string='Table allready存在于数据库中';
设置@xml=CONVERT(xml,@string);
选择@xml;
这是我得到的输出:

<Data>
   <object_II>
      <_1/>
   </object_II>
<Data>

预期产出:

<Data>
   <object_II>
      <MESSAGE>Table allready exists in database</MESSAGE>
   </object_II>
<Data>

数据库中存在表allready

您可以尝试使用XQuery和FLWOR表达式组合所需的XML

SQL


您可以尝试使用XQuery和FLWOR表达式组合所需的XML

SQL


您需要选择,而不是打印:

SELECT 'Table already exists' as Message
FOR XML PATH('object_II'), ROOT ('Data');

您需要选择,而不是打印:

SELECT 'Table already exists' as Message
FOR XML PATH('object_II'), ROOT ('Data');

我的JDBC显示:
Datarowobject\u iMessageTable已经存在/Message/object\u II/row/Data
Dosn看起来不像我想要的,但工作方式不同:)Wouter,请在LinkedIn上与我联系。我的JDBC输出:
Datarowobject\u IIMessageTable已经存在/Message/object\u II/row/Data
Dosn看起来不像我想要的,但工作方式不同:)Wouter,请在LinkedIn上与我联系。
SELECT 'Table already exists' as Message
FOR XML PATH('object_II'), ROOT ('Data');