|
• الانـتـسـاب » Jul 2014
|
• رقـم العـضـويـة » 118364
|
• المشـــاركـات » 1,852
|
• الـدولـة » Kuwait
|
• الـهـوايـة »
|
• اسـم الـسـيـرفـر » Private Server
|
• الـجـنـس » Male
|
• نقـاط التقييم » 67
|
|
|
رد: مشكلة في Acadmey
خد Backup من الـDB الأول حضرتك
و تستخدم الـQuery ده
كود PHP:
use SRO_VT_SHARD TRUNCATE TABLE [dbo].[_TrainingCampSubMentorHonorPoint] TRUNCATE TABLE [dbo].[_TrainingCampMember] TRUNCATE TABLE [dbo].[_TrainingCampBuffStatus] TRUNCATE TABLE [dbo].[_TrainingCampHonorRank] INSERT INTO [dbo].[_TrainingCampHonorRank](Ranking) VALUES (1) INSERT INTO [dbo].[_TrainingCampHonorRank](Ranking) VALUES (2) INSERT INTO [dbo].[_TrainingCampHonorRank](Ranking) VALUES (3) INSERT INTO [dbo].[_TrainingCampHonorRank](Ranking) VALUES (4) INSERT INTO [dbo].[_TrainingCampHonorRank](Ranking) VALUES (5) INSERT INTO [dbo].[_TrainingCampHonorRank](Ranking) VALUES (6) INSERT INTO [dbo].[_TrainingCampHonorRank](Ranking) VALUES (7) INSERT INTO [dbo].[_TrainingCampHonorRank](Ranking) VALUES (8) INSERT INTO [dbo].[_TrainingCampHonorRank](Ranking) VALUES (9) INSERT INTO [dbo].[_TrainingCampHonorRank](Ranking) VALUES (10) INSERT INTO [dbo].[_TrainingCampHonorRank](Ranking) VALUES (11) INSERT INTO [dbo].[_TrainingCampHonorRank](Ranking) VALUES (12) INSERT INTO [dbo].[_TrainingCampHonorRank](Ranking) VALUES (13) INSERT INTO [dbo].[_TrainingCampHonorRank](Ranking) VALUES (14) INSERT INTO [dbo].[_TrainingCampHonorRank](Ranking) VALUES (15) INSERT INTO [dbo].[_TrainingCampHonorRank](Ranking) VALUES (16) INSERT INTO [dbo].[_TrainingCampHonorRank](Ranking) VALUES (17) INSERT INTO [dbo].[_TrainingCampHonorRank](Ranking) VALUES (18) INSERT INTO [dbo].[_TrainingCampHonorRank](Ranking) VALUES (19) INSERT INTO [dbo].[_TrainingCampHonorRank](Ranking) VALUES (20) INSERT INTO [dbo].[_TrainingCampHonorRank](Ranking) VALUES (21) INSERT INTO [dbo].[_TrainingCampHonorRank](Ranking) VALUES (22) INSERT INTO [dbo].[_TrainingCampHonorRank](Ranking) VALUES (23) INSERT INTO [dbo].[_TrainingCampHonorRank](Ranking) VALUES (24) INSERT INTO [dbo].[_TrainingCampHonorRank](Ranking) VALUES (25) INSERT INTO [dbo].[_TrainingCampHonorRank](Ranking) VALUES (26) INSERT INTO [dbo].[_TrainingCampHonorRank](Ranking) VALUES (27) INSERT INTO [dbo].[_TrainingCampHonorRank](Ranking) VALUES (28) INSERT INTO [dbo].[_TrainingCampHonorRank](Ranking) VALUES (29) INSERT INTO [dbo].[_TrainingCampHonorRank](Ranking) VALUES (30) INSERT INTO [dbo].[_TrainingCampHonorRank](Ranking) VALUES (31) INSERT INTO [dbo].[_TrainingCampHonorRank](Ranking) VALUES (32) INSERT INTO [dbo].[_TrainingCampHonorRank](Ranking) VALUES (33) INSERT INTO [dbo].[_TrainingCampHonorRank](Ranking) VALUES (34) INSERT INTO [dbo].[_TrainingCampHonorRank](Ranking) VALUES (35) INSERT INTO [dbo].[_TrainingCampHonorRank](Ranking) VALUES (36) INSERT INTO [dbo].[_TrainingCampHonorRank](Ranking) VALUES (37) INSERT INTO [dbo].[_TrainingCampHonorRank](Ranking) VALUES (38) INSERT INTO [dbo].[_TrainingCampHonorRank](Ranking) VALUES (39) INSERT INTO [dbo].[_TrainingCampHonorRank](Ranking) VALUES (40) INSERT INTO [dbo].[_TrainingCampHonorRank](Ranking) VALUES (41) INSERT INTO [dbo].[_TrainingCampHonorRank](Ranking) VALUES (42) INSERT INTO [dbo].[_TrainingCampHonorRank](Ranking) VALUES (43) INSERT INTO [dbo].[_TrainingCampHonorRank](Ranking) VALUES (44) INSERT INTO [dbo].[_TrainingCampHonorRank](Ranking) VALUES (45) INSERT INTO [dbo].[_TrainingCampHonorRank](Ranking) VALUES (46) INSERT INTO [dbo].[_TrainingCampHonorRank](Ranking) VALUES (47) INSERT INTO [dbo].[_TrainingCampHonorRank](Ranking) VALUES (48) INSERT INTO [dbo].[_TrainingCampHonorRank](Ranking) VALUES (49) INSERT INTO [dbo].[_TrainingCampHonorRank](Ranking) VALUES (50) EXEC [dbo].[_TRAINING_CAMP_UPDATEHONORRANK] DELETE FROM [dbo].[_TrainingCamp]
بعدين هتفتح حضرتك المسار ده
SQL > SRO_VT_SHARD > Programmability > Stored Procedures
و هتفتح كل واحد من دول و تبدل اللي فيه باللي انا جايبه
_TRAINING_CAMP_ADDMEMBER
كود PHP:
USE [SRO_VT_SHARD] GO /****** Object: StoredProcedure [dbo].[_TRAINING_CAMP_ADDMEMBER] Script Date: 9/26/2018 9:38:25 PM ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO
ALTER PROCEDURE [dbo].[_TRAINING_CAMP_ADDMEMBER] @CampID INT, @MemberID INT AS
SET NOCOUNT ON
IF NOT EXISTS (SELECT [ID] FROM _TrainingCamp WITH (NOLOCK) WHERE [ID] = @CampID) BEGIN RETURN -1000 END
IF EXISTS (SELECT CharID FROM _TrainingCampMember WHERE CharID = @MemberID) BEGIN RETURN -1001 END
DECLARE @Ret INT
BEGIN TRANSACTION
DECLARE @HonorPoint INT SET @HonorPoint = 0 SELECT @HonorPoint = HonorPoint FROM _TrainingCampSubMentorHonorPoint WHERE CharID = @MemberID IF @HonorPoint <> 0 BEGIN DELETE FROM _TrainingCampSubMentorHonorPoint WHERE CharID = @MemberID IF (@@ERROR <> 0 OR @@ROWCOUNT = 0) BEGIN ROLLBACK TRANSACTION RETURN -6 END END
EXEC @Ret = _TrainingCamp_FnAddMember @CampID, @MemberID, @HonorPoint IF (@@ERROR <> 0 OR @Ret <= 0) BEGIN ROLLBACK TRANSACTION RETURN @Ret END
COMMIT TRANSACTION
SET NOCOUNT OFF
RETURN 1
_TRAINING_CAMP_CREATE
كود PHP:
USE [SRO_VT_SHARD] GO /****** Object: StoredProcedure [dbo].[_TRAINING_CAMP_CREATE] Script Date: 9/26/2018 9:38:41 PM ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO
ALTER PROCEDURE [dbo].[_TRAINING_CAMP_CREATE] @CreaterID INT AS SET NOCOUNT ON
IF EXISTS (SELECT CharID FROM _TrainingCampMember WHERE CharID = @CreaterID) BEGIN RETURN -1001 END
DECLARE @CampID INT DECLARE @FoundationDate SMALLDATETIME SET @FoundationDate = GETDATE()
BEGIN TRANSACTION
DECLARE @HonorPoint INT SET @HonorPoint = 0 SELECT @HonorPoint = HonorPoint FROM _TrainingCampSubMentorHonorPoint WHERE CharID = @CreaterID IF @HonorPoint <> 0 BEGIN DELETE FROM _TrainingCampSubMentorHonorPoint WHERE CharID = @CreaterID IF (@@ERROR <> 0 OR @@ROWCOUNT = 0) BEGIN ROLLBACK TRANSACTION RETURN -6 END END
INSERT INTO _TrainingCamp (CreationDate, Rank, GraduateCount, EvaluationPoint, LatestEvaluationDate, CommentTitle, Comment ) VALUES ( @FoundationDate, 5, 0, 0, @FoundationDate, '', '')
SET @CampID = @@IDENTITY
IF (@@ERROR <> 0 OR @@ROWCOUNT = 0 OR @CampID = 0) BEGIN ROLLBACK TRANSACTION RETURN -7 END
DECLARE @Ret INT EXEC @Ret = _TrainingCamp_FnAddMember @CampID, @CreaterID, @HonorPoint IF (@@ERROR <> 0 OR @Ret <= 0) BEGIN ROLLBACK TRANSACTION RETURN @Ret END
COMMIT TRANSACTION
SET NOCOUNT OFF
RETURN @CampID
_TRAINING_CAMP_DELCAMP
كود PHP:
USE [SRO_VT_SHARD] GO /****** Object: StoredProcedure [dbo].[_TRAINING_CAMP_DELCAMP] Script Date: 9/26/2018 9:39:35 PM ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO
ALTER PROCEDURE [dbo].[_TRAINING_CAMP_DELCAMP] @CampID INT, @CreaterID INT AS SET NOCOUNT ON
IF NOT EXISTS (SELECT [ID] FROM _TrainingCamp WITH (NOLOCK) WHERE [ID] = @CampID) BEGIN RETURN -1000 END
DECLARE @MemberClass TINYINT SELECT @MemberClass = MemberClass FROM _TrainingCampMember WITH (NOLOCK) WHERE CampID = @CampID AND CharID = @CreaterID IF (@@ERROR <> 0 OR @@ROWCOUNT = 0 OR @MemberClass <> 0) BEGIN RETURN -2000 END
BEGIN TRANSACTION
-- آ؛¸أپ¶ أˆأ„°أںأ€أژأ€أ‡ HonorPoint¸¦ أ€أ؛أ€أ¥أ‡أکµأگ´أ™. INSERT _TrainingCampSubMentorHonorPoint SELECT CharID, HonorPoint FROM _TrainingCampMember WHERE CampID = @CampID AND MemberClass = 1 AND HonorPoint > 0 IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN -2 END
DELETE FROM _TrainingCampMember WHERE CampID = @CampID IF (@@ERROR <> 0 OR @@ROWCOUNT = 0) BEGIN ROLLBACK TRANSACTION RETURN -1 END
DELETE FROM _TrainingCamp WHERE [ID] = @CampID IF (@@ERROR <> 0 OR @@ROWCOUNT = 0) BEGIN ROLLBACK TRANSACTION RETURN -2 END
-- °أ¦أ‡èأ„آ، ¹أ¶أ‡أپ ·¹أ„أڑµأ¥ »èأپ¦ DELETE FROM _TrainingCampBuffStatus WHERE CampID = @CampID IF (@@ERROR <> 0 OR @@ROWCOUNT = 0) BEGIN ROLLBACK TRANSACTION RETURN -2005 END
COMMIT TRANSACTION
SET NOCOUNT OFF
RETURN 1
_TRAINING_CAMP_DELMEMBER
كود PHP:
USE [SRO_VT_SHARD] GO /****** Object: StoredProcedure [dbo].[_TRAINING_CAMP_DELMEMBER] Script Date: 9/26/2018 9:40:39 PM ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO
ALTER PROCEDURE [dbo].[_TRAINING_CAMP_DELMEMBER] @CampID INT, @MemberID INT, @IsBan TINYINT AS SET NOCOUNT ON
IF NOT EXISTS (SELECT [ID] FROM _TrainingCamp WITH (NOLOCK) WHERE [ID] = @CampID) BEGIN RETURN -2000 END
DECLARE @MemberClass TINYINT SELECT @MemberClass = MemberClass FROM _TrainingCampMember WHERE CampID = @CampID AND CharID = @MemberID IF (@@ERROR <> 0 OR @@ROWCOUNT = 0 OR @MemberClass = 0) BEGIN RETURN -2001 END
BEGIN TRANSACTION
-- آ؛¸أپ¶ أˆأ„°أںأ€أژأ€أŒ أ…»أ…أ°, أˆ¤أ€آ؛ °*أ…أ°µأ‡´أ‚ °أ¦آ؟أ¬آ؟£ آ؛¸أپ¶ أˆأ„°أںأ€أژأ€أ‡ HonorPoint¸¦ أ€أ؛أ€أ¥أ‡أک¾أں أ‡أ‘´أ™. IF @MemberClass = 1 BEGIN DECLARE @HonorPoint INT SELECT @HonorPoint = HonorPoint FROM _TrainingCampMember WHERE CampID = @CampID AND CharID = @MemberID IF (@@ERROR <> 0 OR @@ROWCOUNT = 0) BEGIN ROLLBACK TRANSACTION RETURN -2002 END
-- °*أ…أ°µأˆ °أچأ€أŒ ¾أ†´أڈ°أ*, ¸أ*آ؟¹أ†÷أ€أژأ†®°آ، 10أپآ، أ€أŒ»أ³أ€أŒ¶أ³¸é 10أپآ،أ€» ±îأ€أڑ. IF (@IsBan <> 1) BEGIN IF (@HonorPoint >= 10) BEGIN SET @HonorPoint = @HonorPoint - 10 END ELSE BEGIN SET @HonorPoint = 0 END END
-- أ…×أ€أŒآ؛أ*آ؟آ، ¸أ*آ؟¹ أ†÷أ€أژأ†®¸¦ أ€أ؛أ€أ¥. IF @HonorPoint > 0 BEGIN INSERT INTO _TrainingCampSubMentorHonorPoint VALUES (@MemberID, @HonorPoint) IF (@@ERROR <> 0 OR @@ROWCOUNT = 0) BEGIN ROLLBACK TRANSACTION RETURN -2 END END END ELSE BEGIN -- °أ¦أ‡èأ„آ، ¹أ¶أ‡أپ ·¹أ„أڑµأ¥ »èأپ¦ DELETE FROM _TrainingCampBuffStatus WHERE CampID = @CampID AND RecipientCharID = @MemberID IF (@@ERROR <> 0 OR @@ROWCOUNT = 0) BEGIN ROLLBACK TRANSACTION RETURN -2005 END END
DELETE FROM _TrainingCampMember WHERE CampID = @CampID AND CharID = @MemberID IF (@@ERROR <> 0 OR @@ROWCOUNT = 0) BEGIN ROLLBACK TRANSACTION RETURN -1 END
COMMIT TRANSACTION
SET NOCOUNT OFF
RETURN 1
_TRAINING_CAMP_MEMBER_GRADUATE
كود PHP:
USE [SRO_VT_SHARD] GO /****** Object: StoredProcedure [dbo].[_TRAINING_CAMP_MEMBER_GRADUATE] Script Date: 9/26/2018 9:41:05 PM ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO
ALTER PROCEDURE [dbo].[_TRAINING_CAMP_MEMBER_GRADUATE] @CampID INT, @MemberID INT, @Evaluation INT AS SET NOCOUNT ON
IF NOT EXISTS (SELECT [ID] FROM _TrainingCamp WITH (NOLOCK) WHERE [ID] = @CampID) BEGIN RETURN -2000 END
DECLARE @MemberClass TINYINT SELECT @MemberClass = MemberClass FROM _TrainingCampMember WHERE CampID = @CampID AND CharID = @MemberID IF (@@ERROR <> 0 OR @@ROWCOUNT = 0 OR @MemberClass = 0) BEGIN RETURN -2001 END
BEGIN TRANSACTION
-- آ؛¸أپ¶ أˆأ„°أںأ€أژأ€أ‡ أپ¹¾÷ IF @MemberClass = 1 BEGIN -- أ€أŒ³أ‘أ€آ؛ أ†أ²°آ، أپآ،¼أ¶°آ، ¾أ¸´أ™. ´أ™¸¸, أ€أŒ ³أ‘أ€أ‡ HonorPoint¸¦ أ€أ؛أ€أ¥¸¸ أ‡أکأپأ–¸é µأˆ´أ™. DECLARE @HonorPoint INT SELECT @HonorPoint = HonorPoint FROM _TrainingCampMember WHERE CampID = @CampID AND CharID = @MemberID IF (@@ERROR <> 0 OR @@ROWCOUNT = 0) BEGIN ROLLBACK TRANSACTION RETURN -2002 END
-- أ…×أ€أŒآ؛أ*آ؟آ، ¸أ*آ؟¹ أ†÷أ€أژأ†®¸¦ أ€أ؛أ€أ¥. IF @HonorPoint > 0 BEGIN INSERT INTO _TrainingCampSubMentorHonorPoint VALUES (@MemberID, @HonorPoint) IF (@@ERROR <> 0 OR @@ROWCOUNT = 0) BEGIN ROLLBACK TRANSACTION RETURN -2 END END END ELSE -- ¼أ¶·أƒ»أ½أ€أ‡ أپ¹¾÷ BEGIN
-- ¸â¹أ¶µéآ؟آ،°أ” ¸أ*آ؟¹ أ†÷أ€أژأ†®¸¦ ¹أآ؟µأ‡أکآ؛¸أ€أڑ. DECLARE @JoinLvl INT
SELECT @JoinLvl = CharJoinedLevel FROM _TrainingCampMember WHERE CampID = @CampID AND CharID = @MemberID IF (@@ERROR <> 0 OR @@ROWCOUNT = 0) BEGIN ROLLBACK TRANSACTION RETURN -2003 END
-- °آ،أ€أ”·¹آ؛§أ€أŒ 30 أ€أŒأ‡أڈآ؟©¾أں آ؟©·¯°آ،أپأ¶ آ؛أژ°آ، أ‡أ½أ…أƒأ€أŒ أپ¸أ€çأ‡أ‘´أ™. IF (@JoinLvl <= 30) BEGIN DECLARE @MentorPoint INT DECLARE @SubMentorPoint INT
SET @MentorPoint = (40 - @JoinLvl) SET @SubMentorPoint = (@MentorPoint / 10) UPDATE _TrainingCampMember SET HonorPoint = (HonorPoint + @MentorPoint) WHERE CampID = @CampID AND MemberClass = 0 IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN -4 END UPDATE _TrainingCampMember SET HonorPoint = (HonorPoint + @SubMentorPoint) WHERE CampID = @CampID AND MemberClass = 1 IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN -5 END -- أ†أ²°آ،أپآ،¼أ¶¸¦ ¹أآ؟µأ‡أکآ؛¸أ€أڑ. UPDATE _TrainingCamp SET GraduateCount = (GraduateCount + 1), EvaluationPoint = (EvaluationPoint + @Evaluation), LatestEvaluationDate = GETDATE() WHERE [ID] = @CampID IF (@@ERROR <> 0 OR @@ROWCOUNT = 0) BEGIN ROLLBACK TRANSACTION RETURN -3 END END ELSE BEGIN UPDATE _TrainingCamp SET GraduateCount = (GraduateCount + 1) WHERE [ID] = @CampID IF (@@ERROR <> 0 OR @@ROWCOUNT = 0) BEGIN ROLLBACK TRANSACTION RETURN -3 END END
DELETE FROM _TrainingCampBuffStatus WHERE CampID = @CampID AND RecipientCharID = @MemberID IF (@@ERROR <> 0 OR @@ROWCOUNT = 0) BEGIN ROLLBACK TRANSACTION RETURN -2005 END END
-- أ‡أ¶أ€ç أ„·أ‡أپ ¸â¹أ¶آ؟آ،¼* »èأپ¦ DELETE FROM _TrainingCampMember WHERE CampID = @CampID AND CharID = @MemberID IF (@@ERROR <> 0 OR @@ROWCOUNT = 0) BEGIN ROLLBACK TRANSACTION RETURN -1 END
COMMIT TRANSACTION
SET NOCOUNT OFF
RETURN 1
_TRAINING_CAMP_REFRESHMEMBERSTATUS
كود PHP:
USE [SRO_VT_SHARD] GO /****** Object: StoredProcedure [dbo].[_TRAINING_CAMP_REFRESHMEMBERSTATUS] Script Date: 9/26/2018 9:41:31 PM ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER OFF GO
---------------------------------------------------------------------- -- 2. ´©أ€û¹أ¶±× 2أ‚÷ - ·¹آ؛§´أ™آ؟î ¹®أپ¦ أ‡أک°أ، ----------------------------------------------------------------------
ALTER PROCEDURE [dbo].[_TRAINING_CAMP_REFRESHMEMBERSTATUS] @CampID INT, @MemberID INT, @RefreshTarget TINYINT, @Data INT AS SET NOCOUNT ON /* #define TRAINING_CAMP_MEMBER_REFRESH_TARGET_PLAYSTATE (BYTE)0x01 #define TRAINING_CAMP_MEMBER_REFRESH_TARGET_LEVEL (BYTE)0x02 #define TRAINING_CAMP_MEMBER_REFRESH_TARGET_HONORPOINT (BYTE)0x03 #define TRAINING_CAMP_MEMBER_REFRESH_TARGET_POSITION (BYTE)0x04 #define TRAINING_CAMP_MEMBER_REFRESH_TARGET_CHARNAME (BYTE)0x05 #define TRAINING_CAMP_MEMBER_REFRESH_TARGET_CUR_LEVEL (BYTE)0x06 */ IF @RefreshTarget = 2 -- MaxLevel BEGIN UPDATE _TrainingCampMember SET CharMaxLevel = @Data WHERE CampID = @CampID AND CharID = @MemberID END
IF @RefreshTarget = 6 -- CurLevel BEGIN UPDATE _TrainingCampMember SET CharCurLevel = @Data WHERE CampID = @CampID AND CharID = @MemberID END
SET NOCOUNT OFF
_TRAINING_CAMP_STARTUP_HONOR_UPDATE_NEEDED
كود PHP:
USE [SRO_VT_SHARD] GO /****** Object: StoredProcedure [dbo].[_TRAINING_CAMP_STARTUP_HONOR_UPDATE_NEEDED] Script Date: 9/26/2018 9:41:46 PM ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO
ALTER PROCEDURE [dbo].[_TRAINING_CAMP_STARTUP_HONOR_UPDATE_NEEDED] AS IF NOT EXISTS (SELECT LastUpdateDate FROM _TrainingCampHonorRankUpdateDate ) BEGIN RETURN 1 END
DECLARE @UpdateDate DATETIME
SELECT @UpdateDate = LastUpdateDate FROM _TrainingCampHonorRankUpdateDate IF DATEDIFF(DAY, @UpdateDate, GETDATE()) = 0 BEGIN RETURN 0 END ELSE BEGIN RETURN 1 END
_TRAINING_CAMP_UPDATEHONORRANK
كود PHP:
USE [SRO_VT_SHARD] GO /****** Object: StoredProcedure [dbo].[_TRAINING_CAMP_UPDATEHONORRANK] Script Date: 9/26/2018 9:42:29 PM ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO
ALTER PROCEDURE [dbo].[_TRAINING_CAMP_UPDATEHONORRANK] AS SET NOCOUNT ON
-- أ€أڈ´أœ ·©أ…· أ…×أ€أŒآ؛أ*أ€» ¼¼أ†أƒأ‡أ‘´أ™. DECLARE @Ranking INT SET @Ranking = 1
DECLARE @CampID INT DECLARE @Rank TINYINT
BEGIN TRANSACTION
DECLARE RankCursor CURSOR FAST_FORWARD FOR SELECT TOP 50 [ID] FROM _TrainingCamp WITH (NOLOCK) WHERE EvaluationPoint >= 10 ORDER BY EvaluationPoint DESC, LatestEvaluationDate ASC
-- أ€أڈ´أœ أ€üأƒ¼ ·©أ…·أ€» ¾أ¸أ€½أ€¸·أژ أ‡¥½أƒأ‡أڈأ€أڑ. UPDATE _TrainingCamp SET Rank = 5 WHERE Rank <> 5 IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION
DEALLOCATE RankCursor RETURN -1 END
-- ·©أ…· أ…×أ€أŒآ؛أ*µµ أƒأٹ±âأˆ*أ‡أڈأ€أڑ. UPDATE _TrainingCampHonorRank SET CampID = null, Rank = null IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION
DEALLOCATE RankCursor RETURN -1 END
OPEN RankCursor FETCH NEXT FROM RankCursor INTO @CampID WHILE @@FETCH_STATUS = 0 BEGIN IF @Ranking <= 5 BEGIN SET @Rank = 1 END ELSE IF @Ranking <= 15 BEGIN SET @Rank = 2 END ELSE IF @Ranking <= 30 BEGIN SET @Rank = 3 END ELSE BEGIN SET @Rank = 4 END
UPDATE _TrainingCamp SET Rank = @Rank WHERE [ID] = @CampID IF (@@ERROR <> 0 OR @@ROWCOUNT = 0) BEGIN ROLLBACK TRANSACTION CLOSE RankCursor DEALLOCATE RankCursor
RETURN -2 END UPDATE _TrainingCampHonorRank SET CampID = @CampID, Rank = @Rank WHERE Ranking = @Ranking IF (@@ERROR <> 0 OR @@ROWCOUNT = 0) BEGIN ROLLBACK TRANSACTION CLOSE RankCursor DEALLOCATE RankCursor
RETURN -3 END SET @Ranking = @Ranking + 1
FETCH NEXT FROM RankCursor INTO @CampID END
CLOSE RankCursor DEALLOCATE RankCursor
-- ¸¶أپأ¶¸·أ€¸·أژ °»½أ…أ‡أ‘ ³¯أ‚¥¸¦ أ€û¾îآ؛¸أ€أڑ!!! IF EXISTS (SELECT LastUpdateDate FROM _TrainingCampHonorRankUpdateDate) BEGIN UPDATE _TrainingCampHonorRankUpdateDate SET LastUpdateDate = GETDATE() END ELSE BEGIN INSERT INTO _TrainingCampHonorRankUpdateDate VALUES (GETDATE()) END
IF (@@ERROR <> 0 OR @@ROWCOUNT = 0) BEGIN ROLLBACK TRANSACTION RETURN -4 END
COMMIT TRANSACTION
SET NOCOUNT OFF
RETURN 1
_TrainingCamp_FnAddMember
كود PHP:
USE [SRO_VT_SHARD] GO /****** Object: StoredProcedure [dbo].[_TrainingCamp_FnAddMember] Script Date: 9/26/2018 9:43:23 PM ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO
ALTER PROCEDURE [dbo].[_TrainingCamp_FnAddMember] @CampID INT, @MemberID INT, @HonorPoint INT AS SET NOCOUNT ON
IF EXISTS (SELECT CharID FROM _TrainingCampMember WHERE CharID = @MemberID) BEGIN RETURN -1001 END
DECLARE @MemberName VARCHAR(64) DECLARE @MemberMaxLvl TINYINT DECLARE @MemberCurLvl TINYINT SELECT @MemberName = CharName16, @MemberMaxLvl = MaxLevel, @MemberCurLvl = CurLevel FROM _Char WITH (NOLOCK) WHERE CharID = @MemberID IF (@@ERROR <> 0 OR @@ROWCOUNT = 0) BEGIN RETURN -1 END
IF EXISTS (SELECT CharID FROM _TrainingCampMember WITH (NOLOCK) WHERE CampID = @CampID AND CharID = @MemberID) BEGIN RETURN -2 END
DECLARE @RefObjID INT SELECT @RefObjID = RefObjID FROM _Char WITH (NOLOCK) WHERE CharID = @MemberID IF (@@ERROR <> 0 OR @@ROWCOUNT = 0) BEGIN RETURN -3 END
/* commented by novice. ¾أ†·آ،·أژ آ؟أ…±أ¤´أ™!! 2007. 07. 16. ---------------------------------------------------------------------------------------------------------- -- by novice DECLARE @ApprenticeCount INT DECLARE @SubMentorCount INT
-- أ€أ½´ë nolockأ€¸·أژ أ‡أڈأپأ¶ ¸»أ€أڑ!! SELECT @SubMentorCount = COUNT(*) FROM _TrainingCampMember WHERE CampID = @CampID AND MemberClass = 1 IF ( @SubMentorCount >= 2 ) BEGIN RETURN -11 END
-- أ€أ½´ë nolockأ€¸·أژ أ‡أڈأپأ¶ ¸»أ€أڑ!! SELECT @ApprenticeCount = COUNT(*) FROM _TrainingCampMember WHERE CampID = @CampID AND MemberClass = 2 IF ( @ApprenticeCount >= 5 ) BEGIN RETURN -12 END ---------------------------------------------------------------------------------------------------------- */
DECLARE @MemberClass TINYINT SET @MemberClass = 0
IF @MemberMaxLvl < 40 BEGIN SET @MemberClass = 2 END ELSE IF @MemberMaxLvl < 60 BEGIN SET @MemberClass = 1 END
---------------------------------------------------------------------------------------------------------- -- by novice 2007. 07. 16. -- °آ،أ€أ”½أƒأ…°´أ‚ »ç¶÷أ€أ‡ ·¹آ؛§آ؟آ، µû¶أ³¼* أ…¬·آ،½آ؛¸¦ °أ،أپ¤أ‡أڈ´أ‚µ¥.. -- ±×³أ‰ ¹«أ€أ›أپ¤ °¢ أ…¬·آ،½آ؛آ؟آ، ´ëأ‡أک أ€أژآ؟أ¸أ€» °أ‹»çأ‡أڈ¸é ´ç±أ™ ¹®أپ¦°آ، أ€أ–´أ™ -- °آ،أ€أ”أ‡أڈ´أ‚ »ç¶÷أ€أ‡ أ…¬·آ،½آ؛آ؟آ، ¸أ‚´أ‚ أ€أژآ؟أ¸ °أ‹»ç¸¦ ½أƒµµأ‡أک¾أں أ‡أ‘´أ™!! -- ±أ™µ¥.. ³»°آ، أ€üآ؟آ،´أ‚ آ؟أ– أ€أ؛·¸°أ” أ‡أں¾أ؛أ€»±î.......... ¤أگ_¤أگ ---------------------------------------------------------------------------------------------------------- IF @MemberClass = 0 BEGIN DECLARE @MentorCount INT -- أ€أ½´ë nolockأ€¸·أژ أ‡أڈأپأ¶ ¸»أ€أڑ!! SELECT @MentorCount = COUNT(*) FROM _TrainingCampMember WHERE CampID = @CampID AND MemberClass = 0 IF ( @MentorCount >= 1 ) BEGIN RETURN -14 -- ADD DBأ€أ›¾÷ ½أ‡أ†أگ¶أ³´أ‚ ·أژ±×·أژ ¾´´أ™.. END END ELSE IF @MemberClass = 1 BEGIN DECLARE @SubMentorCount INT -- أ€أ½´ë nolockأ€¸·أژ أ‡أڈأپأ¶ ¸»أ€أڑ!! SELECT @SubMentorCount = COUNT(*) FROM _TrainingCampMember WHERE CampID = @CampID AND MemberClass = 1 IF ( @SubMentorCount >= 2 ) BEGIN RETURN -11 END END ELSE IF @MemberClass = 2 BEGIN DECLARE @ApprenticeCount INT -- أ€أ½´ë nolockأ€¸·أژ أ‡أڈأپأ¶ ¸»أ€أڑ!! SELECT @ApprenticeCount = COUNT(*) FROM _TrainingCampMember WHERE CampID = @CampID AND MemberClass = 2 IF ( @ApprenticeCount >= 5 ) BEGIN RETURN -12 END END ----------------------------------------------------------------------------------------------------------
INSERT _TrainingCampMember VALUES (@CampID, @MemberID, @RefObjID, @MemberName, GETDATE(), @MemberClass, @MemberMaxLvl, @MemberCurLvl, @MemberMaxLvl, @HonorPoint) IF (@@ERROR <> 0 OR @@ROWCOUNT = 0) BEGIN RETURN -5 END
IF ( 0 < (SELECT COUNT(*) FROM _TrainingCampBuffStatus WHERE CampID = @CampID and RecipientCharID = @MemberID) ) BEGIN RETURN -2006 END
IF @MemberClass = 0 OR @MemberClass = 2 BEGIN -- °أ¦أ‡èأ„آ، ´©أ€û ¹أ¶أ‡أپآ؟آ، ´ëأ‡أ‘ ³»آ؟ë INSERT _TrainingCampBuffStatus VALUES (@CampID, @MemberID, 0, 0, default, 0, 0) IF (@@ERROR <> 0 OR @@ROWCOUNT = 0) BEGIN RETURN -2005 END END
-- °أ¦أ‡èأ„آ، أ€û¸³ ¹أ¶أ‡أپآ؟آ، ´ëأ‡أ‘ ³»آ؟ë IF @MemberClass = 0 BEGIN INSERT _TrainingCampBuffStatus SELECT @CampID, @MemberID, cnt + 1, 0, '2000-01-01', 0, 3 FROM _RefDummySlot with( nolock ) WHERE cnt < 5 IF (@@ERROR <> 0 OR @@ROWCOUNT = 0) BEGIN RETURN -2005 END END ELSE IF @MemberClass = 2 BEGIN INSERT _TrainingCampBuffStatus SELECT @CampID, @MemberID, 1, 0, '2000-01-01', 0, 3 IF (@@ERROR <> 0 OR @@ROWCOUNT = 0) BEGIN RETURN -2005 END END
SET NOCOUNT OFF
RETURN 1
و جرب و قولي
معلش هما كتير شوية لكن دي المفروض تحل كل المشاكل
و يشتغل عادي جداً
بس رستر السيرفر بعد ما تخلص
|