2016-06-15 5 views
0
ALTER PROC SP_Contact_Msg 
[email protected]_id as int, 
@Email as varchar(50), 
@txtName as varchar(50), 
@txtBody as varchar(50) 
AS 
BEGIN 

    DECLARE @Reg_Id AS INT 

    SET @Reg_Id = (SELECT TOP 1 Reg_Id FROM reg WHERE Email = @Email) 

    IF @Reg_id != NULL 
    BEGIN 
     INSERT INTO Contact (Reg_id, Email, txtName, txtBody, CreatedOn, CreatedBy, UpdatedBy, UpdatedOn, IsActive) 
     values (@Reg_id, @Email, @txtName, @txtBody, GETDATE(), 1, NULL, NULL, 1) 
    END 

    IF @Reg_id = NULL 
    BEGIN 
     INSERT INTO Contact (Reg_id, Email, txtName, txtBody, CreatedOn, CreatedBy, UpdatedBy, UpdatedOn, IsActive) 
     VALUES (null, @Email, @txtName, @txtBody, GETDATE(), 1, NULL, NULL, 1) 
    END 
END 

を実行していないユーザが、そのは(reg_id)を示していないメールiレジスタの電子メール(REG)を得たときに、この手順が正しく動作しない私を助けてくださいだけではnullを表示、その唯一の実行条件elseストアドプロシージャは、正しく

+0

何を達成しようとしていますか?また、asp.netとは関係ありません。適切な技術にタグ付けする。 – techspider

+0

どのようなパラメータがコメントされていますか? @Reg_idだけ、またはそれらのすべて?書式設定のためにあまり明確ではない – Shago

+2

'!= NULL'はおそらく問題の一部です。 'IS NOT NULL'でなければなりません。 – Kidiskidvogingogin

答えて

0

enter image description here [![画像の説明を入力してください] [2]] [2]私はこのコードがあなたに役立つと思います。

create table Reg(Reg_id int identity(1,1), Email varchar(100)) 
     insert into Reg values('[email protected]') 

     create table Contact(Reg_id int, Email varchar(50), txtName varchar(100), txtBody varchar(100), CreatedOn datetime, CreatedBy varchar(30), UpdatedBy varchar(30), UpdatedOn datetime, IsActive int) 

    Create PROC SP_Contact_Msg 
    (
    [email protected]_id as int, 
    @Email as varchar(50), 
    @txtName as varchar(50), 
    @txtBody as varchar(50) 
    ) 
    AS 
    BEGIN 

     DECLARE @Reg_Id AS INT 

     SET @Reg_Id = (SELECT TOP 1 Reg_Id FROM reg WHERE Email = @Email) 

     IF (@Reg_id is not NULL) 
     BEGIN 
      INSERT INTO Contact (Reg_id, Email, txtName, txtBody, CreatedOn, CreatedBy, UpdatedBy, UpdatedOn, IsActive) 
      values (@Reg_id, @Email, @txtName, @txtBody, GETDATE(),'NULL', 'NULL', GETDATE(), 1) 
     END 

     else 
     BEGIN 
      INSERT INTO Contact (Reg_id, Email, txtName, txtBody, CreatedOn, CreatedBy, UpdatedBy, UpdatedOn, IsActive) 
      VALUES (null, @Email, @txtName, @txtBody, GETDATE(),'NULL' , 'NULL', GETDATE(), 1) 
     END 
    END 
+0

ありがとうございました –

関連する問題