2011-12-22 9 views
0

3つのテーブル の1つのページ、つまりSenderReceiverParcelの1ページでユーザーからREcordを取得したいと思います。それは私が AS複数のINSERTステートメントを1つのストアプロシージャに書き込む方法

ALTER PROCEDURE dbo.ExSenderReceiveParcel 

@S_Name varchar(Max), 
@S_Country varchar(Max), 
@S_City varchar(Max), 
@S_StreetNo varchar(Max), 
@S_HouseNo varchar(Max), 
@S_Phone varchar(Max), 
@S_Mobile varchar(Max), 
@S_Email varchar(Max), 
@S_CreditCardNo varchar(Max), 
@S_PinCode varchar(Max), 

@R_Name varchar(Max), 
@R_Country varchar(Max), 
@R_City varchar(Max), 
@R_StreetNo varchar(Max), 
@R_HouseNo varchar(Max), 
@R_Phone varchar(Max), 
@R_Mobile varchar(Max), 
@R_Email varchar(Max), 

@P_Weight varchar(MAX), 
@P_Status varchar(MAX), 
@P_Location varchar(MAX), 
@P_Id numeric(18, 0) out 

あなたはENDを持っていない

DECLARE @S_Id numeric(18, 0), 
@R_Id numeric(18, 0) 

INSERT INTO Sender 
         (Name, S_Country, S_City, StreetNo, HouseNo, Phone, Mobile, Email, CreditCardNo, PinCode) 
VALUES  (
    @S_Name, 
    @S_Country, 
    @S_City, 
    @S_StreetNo, 
    @S_HouseNo, 
    @S_Phone, 
    @S_Mobile, 
    @S_Email, 
    @S_CreditCardNo, 
    @S_PinCode); 


    SET @S_Id = SCOPE_IDENTITY(); 

    INSERT INTO Receiver 
     (Name, R_Country, R_City, StreetNo, HouseNo, Phone, Mobile, Email) 
VALUES 
     (
      @R_Name, 
      @R_Country, 
      @R_City, 
      @R_StreetNo, 
      @R_HouseNo, 
      @R_Phone, 
      @R_Mobile, 
      @R_Email 
     ); 


     SET @R_Id = SCOPE_IDENTITY(); 

     INSERT INTO Parcel 
    (Weight, Status, Location, Sender_Id, Receiver_Id) 
VALUES  
(
    @P_Weight, 
    @P_Status, 
    @P_Location, 
    @S_Id, 
    @R_Id 
); 

SET @P_Id = SCOPE_IDENTITY(); 

Select @P_Id 

答えて

0

を始めると@P_ID

ERRORすなわち誤ったsyntaxStore Procedure codeがあることを理解することはできません、次のERROR を与えますプロシージャの終了時に

それはまた

CREATE PROC pSomething (@params) AS  
BEGIN..<code here>..END 

する必要があり、あなたのタイプをクリーンアップする必要があります。データベース内のすべてがVARCHAR(MAX)の場合、ある時点でいくつかの領域問題が発生します。 SCOPE_IDENTITYは、数値ではなく整数を返します。この文脈では大したことではないかもしれませんが、それは私のペットピーブです。

+0

「@Stuart Ainsworth」私はそれを実行するときにも「@P_ID」の値が入力として必要です –

関連する問題