我将数据从一个xml文件添加到一个临时表中..代码在下面..
SELECT * INTO #TempBusinessUnitFacility FROM OPENXML(@iBusinessUnitFacilityLinkTree, 'BusinessUnits/BusinessUnit', 1)
WITH (BU_Facility_LinkClientCode INT 'BU_Facility_LinkClientCode',BU_Code INT 'BU_Code',Facility_Code INT 'Facility_Code')
假设我有近10行,我想做while循环并逐行将值从临时表插入到其他表中。问题是我没有标识列或行没有here.if我可以添加将no行作为标识列,然后我可以轻松地进行操作。我可以在此临时表中添加一列作为标识。
我可以创建一个临时表添加列并从xml插入值。但这不是我的方案。我的上述方案有任何选项。任何人都可以对其进行排序。
答案 0 :(得分:2)
嗯,你可以这样做:
selet row_number() over (order by (select NULL)) as id,
*
INTO #TempBusinessUnitFacility FROM OPENXML(@iBusinessUnitFacilityLinkTree, 'BusinessUnits/BusinessUnit', 1)
WITH (BU_Facility_LinkClientCode INT 'BU_Facility_LinkClientCode',BU_Code INT 'BU_Code',Facility_Code INT 'Facility_Code')
这使用row_number()
来分配ID。