未在 SQL 上打印程序

Didnt print on Procedure on SQL

所以当我有任何确认或错误时,我会尝试打印一条消息。我有这个table[友情],有ID,朋友邮箱,他们的邮箱和确认友情的日期,

Table 无数据

Create PROCEDURE dbo.pFriendship @Usermail varchar(50), @Friendmail varchar(50) As
    if((Select COUNT(1) From Friendship) < 50)
    begin
        if(@Usermail = @Friendmail)
        begin
            print 'You can not be your friend.';
        end
        else
        begin
        begin TRAN
            Insert Into Friendship (Date, Mail, Friend_Mail) VALUES (CONVERT(DATE, GETDATE()), @Usermail, @Friendmail)
            if(@@ERROR <> 0)
            begin
                print 'Fail!';
            end
            print 'User ' + @Usermail+ ' is now friend of ' + @Friendmail;
            commit TRAN;
        end
    end
    else
    begin
            print 'You can not have more friends.';
    end

当我为此过程使用 EXEC 时,我有插入值,但没有打印的操作...此外,如果我尝试使用相同的邮件,也插入值。没有检查条件

EXEC dbo.pFriendship 'mailTest@hotmail.com', 'mailTest2@gmail.com'

确认插入而不使用我的程序的打印

我希望的是这样的

(1 row affected)
User mailtest@gmail.com is now friend of mailtest2@gmail.com
...

@@ERROR 处的错误或 equals 邮件错误(如果应用)

去掉最后一个else

Create PROCEDURE dbo.pFriendship @Usermail varchar(50), @Friendmail varchar(50) As
if((Select COUNT(1) From Friendship) < 50)
begin
    if(@Usermail = @Friendmail)
    begin
        print 'You can not be your friend.';
    end
    else
    begin
    begin TRAN
        Insert Into Friendship (Date, Mail, Friend_Mail) VALUES (CONVERT(DATE, GETDATE()), @Usermail, @Friendmail)
        if(@@ERROR <> 0)
        begin
            print 'Fail!';
        end
        print 'User ' + @Usermail+ ' is now friend of ' + @Friendmail;
        commit TRAN;
    end
end

begin
        print 'You can not have more friends.';
end