Sql server MSSQL为XML打印消息
如果存在一个表,我会尝试检查我的数据,并从我的语句中获取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
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');