2017-09-26 106 views
0

不太清楚如何解释这一点,但在这里。使用位置光标更新多行

我有一个数据库,在一个位置表中保存5个位置。比方说One, two, three, four and five

我需要做的就是更新另一个表TemplateNames的详细描述后加入locationID(10行的每个位置),但是,位置表和TeamplateNames表中没有以任何方式联系在一起的。

我到目前为止尝试过的方式如下;

CREATE TABLE #Temp 
(
    LocationID int 
) 

SELECT LocationID 
INTO #Temp 
FROM From Location 

DECLARE @ID int; 

DECLARE Cursor cursor 

FOR 
SELECT DISTINCT LocationID 
FROM #Temp 

OPEN Cursor 

FETCH NEXT FROM Cursor INTO @Id 

WHILE @@FETCH_STATUS = 0 
BEGIN 

--Insert data? 
    FETCH NEXT FROM Cursor INTO @Id 
END 

close Cursors; 
deallocate Cursor; 
DROP TABLE #Temp; 

当前的描述如下

IAmATemplate 

但出认沽将需要

IAmATemplate - one(名称后的locationID)

+0

不能真正理解你在做什么。也许一些样本输入/输出会有所帮助。也许编辑2个位置并编辑3行而不是10来简化。 – Tanner

回答

1

如果我correcctly你不明白不必链接表格。如果你只是乘以表格然后更新,将会容易得多。我的意思是;

;WITH T AS(
Select Description,LocationID FROM TemplateNames,Locations 
) 
Update T SET Description = Description + LocationID