2016-06-15 4 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 

단지 널 (null)을 보여 나를 내가 레지스터 (REG)의 이메일을 줄 때이 절차는 사용자가가 (REG_ID)을 보여주지 이메일 제대로 작동하지 않습니다 도와주세요 , 해당 조건 만 실행 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

매우 도움이되었습니다 –