我正在构建一个应用程序,通过 ftp 和 XML 文件将数据从 SQL 服务器传输到异地位置。
我正在通过查询为每个文件构建 XML 数据FOR XML PATH('path'), TYPE。
我将使用 aGUID来生成文件名以及用作文件中的标识符,目前我获取表的 SQL 如下(简化):
SELECT LVL1.inv_account_no
     , LVL1.cus_postcode
     , CONVERT(varchar(255),NEWID()) + '.xml' as FileName
     , (SELECT (SELECT CONVERT(varchar(255),NEWID()) FOR XML PATH('ident'), TYPE),  (
                SELECT.... [rest of very long nested select code for generating XML]
SQL 小提琴示例
这给了我:
Account Postcode  FileName                              xCol
AD0001  B30 3HX   2DF21466-2DA3-4D62-8B9B-FC3DF7BD1A00  <ident>656700EA-8FD5-4936-8172-0135DC49D200</ident>
AS0010  NN12 8TN  58339997-8271-4D8C-9C55-403DE98F06BE  <ident>78F8078B-629E-4906-9C6B-2AE21782DC1D</ident>
每一行/使用NEWID().
有没有一种方法可以在不增加光标或进行两次更新的情况下将相同的 GUID 插入两列?