2011-02-26 89 views
1

我有一個過程,它接受輸入參數並填充到新數據庫的5個不同表中。在舊數據庫中,數據放在一個表中。所存儲的過程的執行是表中的數據作爲sql server中存儲過程的輸入參數集

exec registration ('abc company', 'abc', '1/12/2004', '1/14/2010', 
        'active', 'www.abccompany.com') 

的問題,我已經是..

'abc company','abc','1/12/2004','1/14/2010','active','www.abccompany.com'中的程序提供的輸入參數是在數據庫中的表的一個記錄。我在該表中有1000條記錄。有沒有辦法,表格數據可以成爲我的存儲過程的輸入參數?如果是這樣如何?

回答

0

如果只有一排,你可以「教」你的存儲過程從表採取必要的數據,並僅傳遞ID作爲參數。

事情是這樣的:

CREATE PROCEDURE PopulateTables (@SourceID int) 
AS BEGIN 
    INSERT INTO Table1 
    (CompanyName, CompanyNameShort, DateA, DateB, Status, CompanyWebsite) 
    SELECT 
    CompanyName, CompanyNameShort, DateA, DateB, Status, CompanyWebsite 
    FROM SourceTable 
    WHERE ID = @SourceID 
    ... /* same for the other 4 tables */ 
END; 
相關問題