Fix Aujard & Fix Login Server & Fix Procedureler
1-)Account_Logout--Hazırlayan Neo_TRCREATE PROCEDURE ACCOUNT_LOGOUT
@AccountID varchar(21),
@nRet smallint OUTPUT
AS
BEGIN
DELETE FROM CURRENTUSER WHERE strAccountID = @AccountID
SET @nRet = 1
END
GO
2-)ACCOUNT_LOGIN
--Hazırlayan Neo_trCREATE PROCEDURE ACCOUNT_LOGIN
@AccountID varchar(21),
@Password varchar(13),
@nRet smallint OUTPUT
AS
DECLARE @Nation tinyint, @CharNum smallint,@Game int,@Limit int
SET @Nation = 0
SET @CharNum = 0
SET @Limit = 800
Select @Game = Count(*) From CURRENTUSER
DECLARE @pwd varchar(13)
SET @pwd = null
IF @Game <= @Limit
BEGIN
SELECT @pwd = strPasswd FROM . WHERE strAccountID = @AccountID
END
ELSE IF @Game > @Limit
BEGIN
SELECT @pwd = strPasswd FROM . WHERE strAccountID = @AccountID and Premium > 0
END
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
UPDATE TB_USER Set Premium = 0 Where strAccountID = @AccountID and PreDay = 0
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
3-)LOAD_PREMIUM_SERVICE_USER
--Hazırlayan Neo_TRCREATE PROCEDURE LOAD_PREMIUM_SERVICE_USER
@AccountID varchar(27),
@nRet1 smallint OUTPUT,
@nRet2 smallint OUTPUT
AS
DECLARE @nRow smallint
SET @nRow = 0
DECLARE @Type smallint
SET @Type = null
DECLARE @Days smallint
SET @Days = null
SELECT @nRow = COUNT(*) FROM TB_USER WHERE strAccountID = @AccountID and Premium > 0
IF @nRow = 0
BEGIN
SET @nRet1 = 0
SET @nRet2 = 0
RETURN
END
BEGIN TRAN
SELECT @Type = Premium, @Days = PreDay FROM TB_USER WHERE strAccountID = @AccountID
IF @Days = 0
BEGIN
UPDATE TB_USER SET Premium = 0 WHERE strAccountID = @AccountID
SET @nRet1 = 0
SET @nRet2 = 0
RETURN
END
COMMIT TRAN
SET @nRet1 = @Type
SET @nRet2 = @Days
GO
4-)UPDATE_PREMIUM_SERVICE_USER
--Hazırlayan Neo_TRCREATE PROCEDURE UPDATE_PREMIUM_SERVICE_USER
@AccountID varchar(27),
@Days smallint
AS
UPDATE TB_USER SET PreDay = @Days WHERE strAccountID = @AccountID
UPDATE TB_USER SET Premium = 0 WHERE PreDay = 0 and Premium = 1
GO
5-)PROC_INSERT_CURRENTUSER
--Hazırlayan Neo_TRCREATE PROCEDURE PROC_INSERT_CURRENTUSER
@AccountID varchar(50),
@CharID varchar(50),
@ServerNo int,
@ServerIP varchar(50),
@ClientIP varchar(50),
@nret smallint output
AS
INSERT INTO CURRENTUSER (nServerNo, strServerIP,strAccountID, strCharID, strClientIP )Values(@ServerNo, @ServerIP, @AccountID, @CharID, @ClientIP )
set @nret=1
GO
6-)CLEAR_REMAIN_USERS
CREATE PROCEDURE CLEAR_REMAIN_USERS@AccountID varchar(50)
AS
BEGIN TRAN
DELETE FROM CURRENTUSER WHERE strAccountID = @AccountID
UPDATE TB_USER SET idays = 0
TRUNCATE TABLE CURRENTUSER
COMMIT TRAN
GO
7-)ACCOUNT_NEOTR
--Hazırlayan Neo_TRCREATE PROCEDURE ACCOUNT_NEOTR
@AccountID varchar(21),
@Password varchar(13),
@nRet smallint OUTPUT
AS
DECLARE @Nation tinyint
SET @Nation = 0
-- tid login method by samma 2004.02.24
DECLARE @pwd varchar(13)
SET @pwd = null
SELECT @pwd = strPasswd FROM TB_USER WHERE strAccountID = @AccountID and idays = 1
IF @pwd IS null
BEGIN
SET @nRet = 0
RETURN
END
ELSE IF @pwd <> @Password
BEGIN
SET @nRet = 0
RETURN
END
SELECT @Nation = bNation FROM ACCOUNT_CHAR WHERE strAccountID = @AccountID
exec otonp
exec otonpsimgesi
exec RANK_KNIGHTS
IF @@ROWCOUNT = 0
BEGIN
SET @nRet = 1
RETURN
END
BEGIN
SET @nRet = 1
RETURN
END
BEGIN
SET @nRet = @Nation+1
RETURN
END
GO
8-)TABLO EKLERİ
if exists (select * from dbo.sysobjects where id = object_id(N'.') and OBJECTPROPERTY(id, N'IsUserTable') = 1)drop table .
GO
CREATE TABLE . (
NULL
NULL
) ON
GO 修改排序规则语句是
alter database 数据库名
collate Chinese_PRC_CI_AS
同样,开发涉及的数据库也都要修改排序规则。
1 veya 2 EVT ----Ardreme 59
EVENT 22010E RUN_EVENT 22011
E RUN_EVENT 22012
E RUN_EVENT 22013
E RUN_EVENT 22014
END
EVENT 22011
A CHECK_NOCLASS 106
E RUN_EVENT 22015
END
EVENT 22012
A CHECK_NOCLASS 108
E RUN_EVENT 22015
END
EVENT 22013
A CHECK_NOCLASS 1010
E RUN_EVENT 22015
END
EVENT 22014
A CHECK_NOCLASS 112
E RUN_EVENT 22015
END
EVENT 22015
A CHECK_LV 30 59
E ZONE_CHANGE 202 845 140
END
页:
[1]
2