1

我在表中有一个数据类型作为唯一标识符。在 SQL 语句编辑器中,我试图将我的 Xpath 映射到语句。

引发错误:无法将 uniqueidentifier 转换为 varchar。我已经尝试了所有我能想到的函数和数据类型。

ex EXEC SetSomeSP @ProcessID = {$/process_data/@ProcessID$}

我厌倦了引号、使用函数进行强制转换和使用参数化查询但没有运气。

任何帮助都会很棒。

4

2 回答 2

1

您可能会更幸运地进行显式转换?

declare @procid varchar(36)
select @procid = cast({$/process_data/@ProcessID$} as varchar(36))
EXEC SetSomeSP @ProcessID = @procid
于 2010-08-11T13:12:17.907 回答
1

确保 UUID 变量是 Livecycle 中的字符串变量,然后使用如下语句
EXEC SetSomeSP @ProcessID = '{$/process_data/@ProcessID$}'

如果这不起作用,您可以尝试记录该过程、运行它并回放它以在运行查询之前检查您的参数值。

此外,您可以使用参数化查询,例如
EXEC SetSomeSP @ProcessID = ?并选中标题为“使用参数化查询”的框,然后单击“+”按钮,并选择字符串作为类型,并选择您的流程变量作为值。
您还可以输入测试值并单击“测试”按钮以获取测试值的结果。

于 2010-08-16T20:38:02.140 回答