搜索
 找回密码
 加入

Fix Aujard & Fix Login Server & Fix Procedureler

ctgwglzc 2008-11-10 21:17:26 1602
1-)Account_Logout
  1. --Hazırlayan Neo_TR
  2. CREATE PROCEDURE ACCOUNT_LOGOUT
  3. @AccountID    varchar(21),
  4. @nRet        smallint    OUTPUT
  5. AS
  6. BEGIN
  7.     DELETE FROM CURRENTUSER WHERE strAccountID = @AccountID
  8.     SET @nRet = 1
  9. END
  10. GO
复制代码

12 回复

ctgwglzc
2008-11-1 01:55:46
楼主

2-)ACCOUNT_LOGIN

点击查看详情
  1. --Hazırlayan Neo_tr
  2. CREATE PROCEDURE ACCOUNT_LOGIN
  3. @AccountID    varchar(21),
  4. @Password    varchar(13),
  5. @nRet        smallint    OUTPUT

  6. AS

  7. DECLARE @Nation tinyint, @CharNum smallint,@Game int,@Limit int
  8. SET @Nation = 0
  9. SET @CharNum = 0
  10. SET @Limit = 800
  11. Select @Game = Count(*) From CURRENTUSER


  12. DECLARE @pwd varchar(13)

  13. SET @pwd = null
  14. IF @Game <= @Limit
  15. BEGIN
  16. SELECT @pwd = strPasswd FROM [dbo].[TB_USER] WHERE strAccountID = @AccountID
  17. END
  18. ELSE IF @Game > @Limit
  19. BEGIN
  20. SELECT @pwd = strPasswd FROM [dbo].[TB_USER] WHERE strAccountID = @AccountID and Premium > 0
  21. END
  22. IF @pwd IS null
  23. BEGIN
  24.     SET @nRet = 0
  25.              --SET @nRet = 4
  26.     RETURN
  27. END

  28. ELSE IF @pwd <> @Password
  29. BEGIN
  30.     SET @nRet = 0
  31.              --SET @nRet = 3
  32.     RETURN
  33. END

  34. UPDATE TB_USER Set Premium = 0 Where strAccountID = @AccountID and PreDay = 0

  35. SELECT @Nation = bNation, @CharNum = bCharNum FROM ACCOUNT_CHAR WHERE strAccountID = @AccountID
  36. IF @@ROWCOUNT = 0
  37. BEGIN
  38.     SET @nRet = 1
  39.     RETURN
  40. END
  41. IF @CharNum = 0
  42. BEGIN
  43.     SET @nRet = 1
  44.     RETURN
  45. END
  46. ELSE
  47. BEGIN
  48.     SET @nRet = @Nation+1
  49.              --SET @nRet = 1
  50.     RETURN
  51. END
  52. GO
复制代码
ctgwglzc
2008-11-1 01:56:10
楼主

3-)LOAD_PREMIUM_SERVICE_USER

  1. --Haz&#305;rlayan Neo_TR
  2. CREATE PROCEDURE LOAD_PREMIUM_SERVICE_USER
  3. @AccountID varchar(27),
  4. @nRet1 smallint OUTPUT,
  5. @nRet2 smallint OUTPUT
  6. AS
  7. DECLARE @nRow smallint
  8. SET @nRow = 0
  9. DECLARE @Type smallint
  10. SET @Type = null
  11. DECLARE @Days smallint
  12. SET @Days = null
  13. SELECT @nRow = COUNT(*) FROM TB_USER WHERE strAccountID = @AccountID and Premium > 0
  14. IF @nRow = 0
  15. BEGIN
  16. SET @nRet1 = 0
  17. SET @nRet2 = 0
  18. RETURN
  19. END
  20. BEGIN TRAN
  21. SELECT @Type = Premium, @Days = PreDay FROM TB_USER WHERE strAccountID = @AccountID
  22. IF @Days = 0
  23. BEGIN
  24. UPDATE TB_USER SET Premium = 0 WHERE strAccountID = @AccountID
  25. SET @nRet1 = 0
  26. SET @nRet2 = 0
  27. RETURN
  28. END
  29. COMMIT TRAN
  30. SET @nRet1 = @Type
  31. SET @nRet2 = @Days
  32. GO
复制代码
ctgwglzc
2008-11-1 01:56:32
楼主

4-)UPDATE_PREMIUM_SERVICE_USER

  1. --Haz&#305;rlayan Neo_TR
  2. CREATE PROCEDURE UPDATE_PREMIUM_SERVICE_USER
  3. @AccountID varchar(27),
  4. @Days smallint
  5. AS
  6. UPDATE TB_USER SET PreDay = @Days WHERE strAccountID = @AccountID
  7. UPDATE TB_USER SET Premium = 0 WHERE PreDay = 0 and Premium = 1
  8. GO
复制代码
ctgwglzc
2008-11-1 01:56:56
楼主

5-)PROC_INSERT_CURRENTUSER

  1. --Haz&#305;rlayan Neo_TR
  2. CREATE PROCEDURE PROC_INSERT_CURRENTUSER
  3. @AccountID         varchar(50),
  4. @CharID         varchar(50),
  5. @ServerNo         int,
  6. @ServerIP       varchar(50),
  7. @ClientIP       varchar(50),
  8. @nret smallint output

  9. AS

  10. INSERT INTO CURRENTUSER (nServerNo, strServerIP,  strAccountID, strCharID, strClientIP )  Values  (@ServerNo, @ServerIP, @AccountID, @CharID, @ClientIP )
  11. set @nret=1
  12. GO
复制代码
ctgwglzc
2008-11-1 01:57:18
楼主

6-)CLEAR_REMAIN_USERS

  1. CREATE PROCEDURE CLEAR_REMAIN_USERS
  2. @AccountID varchar(50)
  3. AS
  4. BEGIN TRAN
  5. DELETE FROM CURRENTUSER WHERE strAccountID = @AccountID
  6. UPDATE TB_USER SET idays = 0
  7. TRUNCATE TABLE CURRENTUSER
  8. COMMIT TRAN
  9. GO
复制代码
ctgwglzc
2008-11-1 01:57:46
楼主

7-)ACCOUNT_NEOTR

  1. --Haz&#305;rlayan Neo_TR
  2. CREATE PROCEDURE ACCOUNT_NEOTR
  3. @AccountID varchar(21),
  4. @Password varchar(13),
  5. @nRet smallint OUTPUT
  6. AS

  7. DECLARE @Nation tinyint
  8. SET @Nation = 0
  9. -- tid login method by samma 2004.02.24
  10. DECLARE @pwd varchar(13)

  11. SET @pwd = null

  12. SELECT @pwd = strPasswd FROM TB_USER WHERE strAccountID = @AccountID and idays = 1
  13. IF @pwd IS null
  14. BEGIN
  15. SET @nRet = 0
  16. RETURN
  17. END

  18. ELSE IF @pwd <> @Password
  19. BEGIN
  20. SET @nRet = 0
  21. RETURN
  22. END

  23. SELECT @Nation = bNation FROM ACCOUNT_CHAR WHERE strAccountID = @AccountID
  24. exec otonp
  25. exec otonpsimgesi
  26. exec RANK_KNIGHTS
  27. IF @@ROWCOUNT = 0
  28. BEGIN
  29. SET @nRet = 1
  30. RETURN
  31. END
  32. BEGIN
  33. SET @nRet = 1
  34. RETURN
  35. END
  36. BEGIN
  37. SET @nRet = @Nation+1
  38. RETURN
  39. END
  40. GO
复制代码
ctgwglzc
2008-11-1 01:58:55
楼主

8-)TABLO EKLERİ

  1. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[TB_USER]') and OBJECTPROPERTY(id, N'IsUserTable') = 1)
  2. drop table [dbo].[TB_USER]
  3. GO

  4. CREATE TABLE [dbo].[TB_USER] (
  5.         [Premium] [int] NULL
  6.         [PreDay] [int] NULL
  7. ) ON [PRIMARY]
  8. GO
复制代码
ctgwglzc
2008-11-4 00:13:48
楼主
修改排序规则语句是
alter database 数据库名
collate Chinese_PRC_CI_AS
同样,开发涉及的数据库也都要修改排序规则。
ctgwglzc
2008-11-10 21:17:26
楼主

1 veya 2 EVT ----Ardreme 59

  1. EVENT 22010
  2. E RUN_EVENT 22011
  3. E RUN_EVENT 22012
  4. E RUN_EVENT 22013
  5. E RUN_EVENT 22014
  6. END

  7. EVENT 22011
  8. A CHECK_NOCLASS 106
  9. E RUN_EVENT 22015
  10. END

  11. EVENT 22012
  12. A CHECK_NOCLASS 108
  13. E RUN_EVENT 22015
  14. END

  15. EVENT 22013
  16. A CHECK_NOCLASS 1010
  17. E RUN_EVENT 22015
  18. END

  19. EVENT 22014
  20. A CHECK_NOCLASS 112
  21. E RUN_EVENT 22015
  22. END

  23. EVENT 22015
  24. A CHECK_LV 30 59
  25. E ZONE_CHANGE 202 845 140
  26. END
复制代码
12下一页
高级模式
游客