| 修复重复选择种族的方法 修改存储过程
 ==========================复制代码CREATE PROCEDURE ACCOUNT_LOGIN
@AccountID        varchar(21),
@Password        varchar(13),
@nRet                smallint        OUTPUT
AS
DECLARE @Nation tinyint, @CharNum smallint
SET @Nation = 0
SET @CharNum = 0
DECLARE @pwd varchar(13)
SET @pwd = null
SELECT @pwd = strPasswd FROM [dbo].[TB_USER] WHERE strAccountID = @AccountID and idays=6
IF @pwd IS null
BEGIN
        SET @nRet = 0
             --SET @nRet = 4
        RETURN
END
ELSE IF @pwd <> @Password
BEGIN
        SET @nRet = 0
             --SET @nRet = 3
        RETURN
END
DECLARE @gokhantasci varchar(21)
select @gokhantasci = count(straccountid)  FROM premium_service WHERE strAccountID = @AccountID
if @gokhantasci = 0
begin
insert into PREMIUM_SERVICE (strAccountID, strType, nDays) VALUES (@AccountID, 1, 3)
end
SELECT @Nation = bNation, @CharNum = bCharNum FROM ACCOUNT_CHAR WHERE strAccountID = @AccountID
IF @@ROWCOUNT = 0
BEGIN
        SET @nRet = 1
        RETURN
END
IF @CharNum = 0
BEGIN
        SET @nRet = 1
        RETURN
END
ELSE 
BEGIN
        SET @nRet = @Nation+1
             --SET @nRet = 1
        RETURN
END
GO
复制代码
CREATE PROCEDURE MYST_LOGIN
@AccountID        varchar(21),
@Password        varchar(13),
@nRet                smallint        OUTPUT
AS
DECLARE @Nation tinyint, @CharNum smallint
SET @Nation = 0
SET @CharNum = 0
DECLARE @pwd varchar(13)
SET @pwd = null
SELECT @pwd = strPasswd FROM [dbo].[TB_USER] WHERE strAccountID = @AccountID
IF @pwd IS null
BEGIN
        SET @nRet = 0
        RETURN
END
ELSE IF @pwd <> @Password
BEGIN
        SET @nRet = 0
        RETURN
END
SELECT @Nation = bNation, @CharNum = bCharNum FROM ACCOUNT_CHAR WHERE strAccountID = @AccountID
IF @@ROWCOUNT = 0
BEGIN
        SET @nRet = 1
        RETURN
END
IF @CharNum >= 0
BEGIN
        SET @nRet = 1
        RETURN
END
ELSE 
BEGIN
        SET @nRet = @Nation+1
        RETURN
END
GO
 |