declare @UID as int declare @CID as int declare @Char1 as int declare @Char2 as int declare @Char3 as int declare @Char4 as int declare @Char5 as int declare @OldServerGroupID as tinyint declare @Count as tinyint declare @CID_Temp as int SELECT @CID = MAX(CID) + 1 FROM CharInfo WITH (UPDLOCK) declare cursor1 cursor for Select UID, OldServerGroupID, Char1, Char2, Char3, Char4, Char5 From Part2_New.dbo.UserInfo open cursor1 FETCH NEXT FROM cursor1 INTO @UID, @OldServerGroupID, @Char1, @Char2, @Char3, @Char4, @Char5 WHILE @@FETCH_STATUS = 0 BEGIN Set @Count = 5 WHILE (@Count > 0) BEGIN if @Count = 5 Begin Set @CID_Temp = @Char1 End else if @Count = 4 Begin Set @CID_Temp = @Char2 End else if @Count = 3 Begin Set @CID_Temp = @Char3 End else if @Count = 2 Begin Set @CID_Temp = @Char4 End else if @Count = 1 Begin Set @CID_Temp = @Char5 End If @CID_Temp <> 0 Begin -- ij¸¯ÅÍ Á¤º¸ -- Insert into CharInfo Select @CID, T.Name, T.Sex, T.Hair, T.Face, T.Race, T.Class, T.Fame, T.Mileage, T.Guild, T.Party, T.Level, T.Equip, T.Gold, T.IP, T.STR, T.DEX, T.CON, T.Intell, T.WIS, T.HP, T.MP, T.Exp, T.Chance From Part2_New.dbo.CharInfo T Where CID = @CID_Temp -- ij¸¯ÅÍ Á¤º¸ Ex -- Insert Into CharInfoEx Select @CID, T.Total, T.ServerID, T.Config, T.NameChangeCount, T.AdminFlag, T.RealmPoint, T.RealmCheckPoint, T.RealmMinute, T.LogoutTime, T.GuildWarFlag, T.RealmWarFlag From Part2_New.dbo.CharInfoEx T Where CID = @CID_Temp -- Äù½ºÆ® -- Insert Into Quest Select @CID, T.Quest, T.History From Part2_New.dbo.Quest T Where CID = @CID_Temp -- ij¸¯ÅÍ ¾ÆÀÌÅÛ -- Insert Into CharItem Select @CID , T.Quick, T.Equip, T.Inventory, T.Extra From Part2_New.dbo.CharItem T Where CID = @CID_Temp -- ij¸¯ÅÍ ¾ÆÀÌÅÛ Ex -- Insert Into CharItemEx Select @CID, T.Exchange, T.TempInven From Part2_New.dbo.CharItemEx T Where CID = @CID_Temp -- ij¸¯ÅÍ ½ºÅ³ -- Insert Into CharSkill Select @CID, T.Skill From Part2_New.dbo.CharSkill T Where CID = @CID_Temp -- ij¸¯ÅÍ ÁÂÇ¥ -- Insert Into CharPos Select @CID, T.LastPointX, T.LastPointY, T.LastPointZ, T.SavePointX, T.SavePointY, T.SavePointZ From Part2_New.dbo.CharPos T Where CID = @CID_Temp -- ij¸¯ÅÍ »ý¼º ½Ã°£ -- Insert Into CharInfo_Time Select @CID, T.CreateTime, T.UpdateTime From Part2_New.dbo.CharInfo_Time T Where CID = @CID_Temp -- ij¸¯ÅÍ Ä£±¸ Á¤º¸ -- Insert Into Friend Values(@CID, NULL, NULL, NULL, NULL) -- ÅëÇÕ Ä³¸¯ÅÍ ¸®½ºÆ® -- Insert Into TblUnifiedCharList Select T.UID, T.OldServerGroupID, T.BeforeCID, @CID, T.BeforeCharName From Part2_New.dbo.TblUnifiedCharList T Where UID = @UID And OldServerGroupID = @OldServerGroupID And NewCID = @CID_Temp -- UserInfo ¾÷µ¥ÀÌÆ® -- if @Count = 5 Begin Update Part2_New.dbo.UserInfo Set Char1 = @CID Where UID = @UID And OldServerGroupID = @OldServerGroupID End else if @Count = 4 Begin Update Part2_New.dbo.UserInfo Set Char2 = @CID Where UID = @UID And OldServerGroupID = @OldServerGroupID End else if @Count = 3 Begin Update Part2_New.dbo.UserInfo Set Char3 = @CID Where UID = @UID And OldServerGroupID = @OldServerGroupID End else if @Count = 2 Begin Update Part2_New.dbo.UserInfo Set Char4 = @CID Where UID = @UID And OldServerGroupID = @OldServerGroupID End else if @Count = 1 Begin Update Part2_New.dbo.UserInfo Set Char5 = @CID Where UID = @UID And OldServerGroupID = @OldServerGroupID End Set @CID = @CID + 1 End Set @Count = @Count - 1 End FETCH NEXT FROM cursor1 INTO @UID, @OldServerGroupID, @Char1, @Char2, @Char3, @Char4, @Char5 End CLOSE cursor1 DEALLOCATE cursor1