2015-12-22 57 views
-1

在我的asp.net程序後端sql中,我需要多次添加相同的數據。 例如:我需要在數據庫表table1中插入一個帶有Num-1212,Qty-3,Date-20-02-15,code-A11的項目。多次插入一個項目到數據庫

同時我需要將這些數據添加到另一個表table2中,如下所示。時間重複的次數等於數量。請幫助。

enter image description here

String str1 = "insert into table2 select * from table1;"; 
SqlCommand xp1 = new SqlCommand(str1, con); 
con.Open(); 
SqlDataAdapter da1 = new SqlDataAdapter(); 
da1.SelectCommand = xp1; 
DataSet ds1 = new DataSet(); 
da1.Fill(ds1, "Code"); 
GridView1.DataSource = ds1; 
con.Close(); 

我試過,但它會插入1時

+1

你的問題是什麼?你有什麼嘗試,沒有奏效? –

+0

如果它現在正確運行,您可以隨時根據數量運行您的代碼幾次。 – Hemal

+0

嘗試谷歌搜索某時 –

回答

1

存儲過程[未經測試]

CREATE PROCEDURE [dbo].[AStoredProcWrittenmForMe] (@num int, 
              @qty int, 
              @code nvarchar(10), 
              @date DateTime) 
AS 
BEGIN 
    DECLARE @newId int; 
    INSERT INTO table1 
    SELECT @num, @qty, @code, @date; 
    SET @newId = @@IDENTITY; 


    DECLARE @loop int = @qty; 
    WHILE @loop > 0 
    INSERT INTO Table12 
     SELECT @newId, @num, @qty, @code, @date; 
    SET @loop = ~loop - 1; 
    BEGIN 

    END 

END 
GO 

您可以通過SQL命令的ExecuteReader叫它.... https://msdn.microsoft.com/en-us/library/9kcbe65k%28v=vs.110%29.aspx

或許你可以嘗試自己做....

0

我將創建一個存儲過程來做到這一點,並調用。

然後,從應用程序到數據庫只有1個調用,而不是多個匹配。

+0

插入表1時觸發器會更好。 – jarlh

+0

請爲我提供該代碼 –