2012-07-10 71 views
-1

我有2代表例如:綠色(用戶ID,姓名,地址),紅色(用戶ID,姓名,TemproraryAddress)存儲過程來選擇列,並插入到不同的表

我想

select from Green table (Name) Where = userID 
AND 
INSERT INTO Red(userID,Name,TemproraryAddress) 
VALUES (@userID,@Name,@TemproraryAddress) 

我的主要問題是如何將選定的值分配到標量變量?

注意:此示例表是顯示一個示例場景,而不是對於真實情況......

回答

2

你的意思是像

insert into Red(userId, Name, TemporaryAddress 
select userId, Name, Address 
from Green 
where userId = @userId 

declare @userId int, @Name varchar(100), @address varchar(100) 

select @userId = userId, @Name = Name, @address = Address from Green where userId = 12345 

insert into Red (userId, Name, TemporaryAddress) values (@userId, @Name, @address) 

或別的東西, ?

......你的問題並不清楚你到底想做什麼。你現有的代碼是什麼樣的,它不是你想做的事情?

EDIT

一個替代的選擇是對綠表使用一個插入觸發器。我不知道,如果你想基本上是匹配的表,但如果你沒有,那麼這將是如何做到這一點:

create trigger green_InsToRed_TRG on Green for insert as 

insert into Red (UserId, Name, TemporaryAddress) 
select UserId, Name, Address from inserted 
+0

只選擇名稱從綠色其中userid =「1234」,並插入到名字紅色(姓名) – mshiyam 2012-07-10 15:44:02

+0

我認爲選項2會起作用,但您忽略了是否要複製userId值和地址值。另請參閱我的觸發建議。 – 2012-07-10 15:48:53

相關問題