私は2つのテーブルtbl_PurchaseDetails
とtbl_ItemDetails
. にレコードを挿入した直後に、いくつかのレコードをtbl_ItemDetails
fromに挿入する必要があります。自動生成されたカスタム フィールドがあります。tbl_PurchaseDetails
tbl_PurchaseDetails
tbl_PurchaseDetails
PurchaseID
自動生成のコードは次のPurchaseID
とおりです:-
*このトリガーは完全に機能します *
CREATE FUNCTION CreatePurchaseID (@id INT)
RETURNSvarchar(10)
AS
BEGIN
RETURN 'P' + CONVERT(VARCHAR(10), @id)
END
CREATE TRIGGER trigger_PurchaseID ON tbl_PurchaseDetails
FOR INSERT AS
UPDATE
tbl_PurchaseDetails
SET
tbl_PurchaseDetails.PurchaseID = dbo.CreatePurchaseID(tbl_PurchaseDetails.ID)
FROM
tbl_PurchaseDetails
INNER JOIN
INSERTED on tbl_PurchaseDetails.ID= INSERTED.ID
挿入するトリガーの次のコードを作成しましたtbl_ItemDetails
:-
CREATE TRIGGER trigger_UpdateItemDetails ON tbl_PurchaseDetails
FOR INSERT AS
DECLARE @PurchaseID VARCHAR(20)
DECLARE @Quantity INT
DECLARE @WarehouseID VARCHAR(20)
SELECT @PurchaseID=(PurchaseID) FROM INSERTED
SELECT @Quantity=(ItemQuantity) FROM INSERTED
SELECT @WarehouseID=(WarehouseID) FROM INSERTED
INSERT INTO
tbl_ItemDetails
(PurchaseID,Quantity,WarehouseID)
VALUES
(
@PurchaseID,@Quantity,@WarehouseID
)
tbl_PurchaseDetails
**そして今、レコードに挿入するtbl_PurchaseDetails
と、tbl_ItemDetails
正常に追加されます。ここでの問題は、 がPurchaseID
に null として挿入されることtbl_ItemDetails
です。さすがに挿入されるtbl_PurchaseDetails
けど。