1

こんにちは、私は関数に慣れていないので、ここで少し問題が発生しています

このようなテーブルが2つあります

バグ

BugID|Title|ProjectName|CreatedBy

バグ履歴

BughistoryID|BugID|Assignedto|ToStatus|FromStatus

テーブルに挿入するBugsテーブルの挿入ストアド プロシージャを作成し、 ID と主キーを持ちたいと考えています。[Title]|[ProjectName][CreatedBy]bugsBugID

その後BugID、新しいタイトルの をテーブルに挿入する必要がTostatusあります。BugHistoryこれらの 2 つの手順は、1 つのストアド プロシージャで実行する必要があります。

テーブルからの列[AssignedTo]とグリッドビューでバグテーブルを表示する必要があるselectステートメントが必要です。この両方の手順で関数を使用するにはどうすればよいですか?[Tostatus]BugHistory

4

2 に答える 2

0

バグにトリガーを作成して、BugsHistory AFTER INSERT にデータを挿入してみてください

于 2012-07-30T05:01:25.433 に答える
0

次のようなことを試してください:

-- create stored procedure to insert a new bug, with parameters
CREATE PROCEDURE dbo.InsertBug 
    @Title VARCHAR(100),
    @ProjectName VARCHAR(100),
    @CreatedBy VARCHAR(100)
AS BEGIN

  -- variable to hold newly inserted "BugID"    
  DECLARE @NewBugID INT

  -- do the insert into the "Bugs" table      
  INSERT INTO dbo.Bugs(Title, ProjectName, CreatedBy)
  VALUES(@Title, @ProjectName, @CreatedBy)

  -- get the new BugID that's been assigned during INSERT      
  SELECT @NewBugID = SCOPE_IDENTITY()

  -- insert into the BugHistory table - since you didn't specify anything,
  -- I assumed the bug gets assigned to whoever created it by default,
  -- and I assumed "ToStatus" is a string column so I assigned "New" to it
  -- ADAPT as needed !
  INSERT INTO dbo.BUgHistory(BugID, AssignedTo, ToStatus)
  VALUES(@NewBugID, @CreatedBy, 'New')
END
于 2012-07-30T05:07:29.863 に答える