Selamlar
Neden mi?
Oyuncuların itemleri silinmesin diye.
Kullanımı çok basittir.
USERDATA, ACCOUNT_CHAR, TB_USER, WAREHOUSE
Tablolarını İmport, Export yaptıktan sonra,
Kaybolan oyuncu itemlerini Geri alabilmek için Aşağıdaki kodu uygulamanız gerekmektedir.
Kod:
EXEC USER_AKTAR'nick',1
Şeklinde çalışır. Her karakter için bunu yapmanız gerekmektedir. Bu işlemi kendi sistemimde uygulayıp bitirmem 20 dakikamı almıyor.
KODU UYGULAMADAN ÖNCE KENDİNİZE GÖRE DÜZENLEYİN.
Kod:
CREATEPROCEDURE [dbo].[USER_AKTAR]
(
@CharID char(21),
@Day tinyint
)
AS
/*
Modifiye : AKI
*/
DECLARE @strUserID char(21)
DECLARE @Exp int,@Loyalty int,@Gold int
DECLARE @Rank tinyint,@Title tinyint,@Level tinyint,@Knights smallint,@Fame tinyint,@Strong tinyint,@Sta tinyint,@Dex tinyint,@Intel tinyint,@Cha tinyint,@Points tinyint
DECLARE @strSkill varchar(10),@strItem varchar(400),@strSerial varchar(400),@strQuest varchar(400)
DECLARE @UserInGame int,@CheckUserChar int
SELECT @UserInGame =COUNT(strCharID)FROM CURRENTUSER WHERE strCharID = @CharID
SELECT @CheckUserChar =COUNT(strUserId)FROM USERDATA WHERE strUserId = @CharID
IF @UserInGame 0
BEGIN
PRINT 'İşlem Yapılamadı, Kullancı Oyundadır.'
END
ELSE IF @CheckUserChar = 0
BEGIN
PRINT 'Böyle Bir Kullancı Bulunamadı'
END
ELSE
BEGIN
IF (@Day = 1)
BEGIN
SELECT @strUserId = [strUserID],@Rank = [Rank],@Title = [Title],@Level = [Level],@Exp = [Exp],@Loyalty = [Loyalty],@Knights = [Knights],@Fame = [Fame],@Strong = [Strong],@Sta = [Sta],@Dex = [Dex],@Intel = [Intel],@Cha = [Cha],@Points = [Points],@Gold = [Gold],@strSkill = [strSkill],@strItem = [strItem],@strSerial = [strSerial],@strQuest = [strQuest] FROM
-- DİKKAT: BURAYA AKTARMA ALACAINIZ DATABASE'İN İSMİNİ
-- YAZACAKSINIZ.
-- kn_online2 adında Yedeiniz mi var ?
-- O Zaman şöyle bir örnek vereyim. Kn_online2.Dbo.USERDATA
-- KARAKTERİN BULUNDUĞU DATABASE ADI BAŞLANĞIÇ
Kn_online2.Dbo.USERDATA
-- KARAKTERN BULUNDUU DATABASE ADI BİTİŞ
WHERE strUserID = @CharID
UPDATE USERDATA SETRank= @Rank,Title = @Title,Level= @Level,Exp= @Exp,Loyalty = @Loyalty,Knights = @Knights,Fame = @Fame,Strong = @Strong,Sta = @Sta,Dex = @Dex,Intel = @Intel,Cha = @Cha,Points = @Points,Gold = @Gold,strSkill = @strSkill,strItem = @strItem,strSerial = @strSerial,strQuest = @strQuest WHERE strUserId = @CharID
END
ELSE
BEGIN
PRINT'Lütfen en sona 1 yazın'
END
END
Kullanımı ...
1 Başlat > Tüm Programlar > Microsoft SQL Server > Query Analyzer ‘ a giriyoruz.
2 SQL Server’ a bağlanıyoruz ve açılan ekranda ” master ” yerine ” DBmizi ” seçiyoruz.
3 Seçtikten sonra aşağıdaki kodu kopyalayıp , yapıştırıyoruz ve F5 yaparak kodumuzu uyguluyoruz.
Neden mi?
Oyuncuların itemleri silinmesin diye.
Kullanımı çok basittir.
USERDATA, ACCOUNT_CHAR, TB_USER, WAREHOUSE
Tablolarını İmport, Export yaptıktan sonra,
Kaybolan oyuncu itemlerini Geri alabilmek için Aşağıdaki kodu uygulamanız gerekmektedir.
Kod:
EXEC USER_AKTAR'nick',1
Şeklinde çalışır. Her karakter için bunu yapmanız gerekmektedir. Bu işlemi kendi sistemimde uygulayıp bitirmem 20 dakikamı almıyor.
KODU UYGULAMADAN ÖNCE KENDİNİZE GÖRE DÜZENLEYİN.
Kod:
CREATEPROCEDURE [dbo].[USER_AKTAR]
(
@CharID char(21),
@Day tinyint
)
AS
/*
Modifiye : AKI
*/
DECLARE @strUserID char(21)
DECLARE @Exp int,@Loyalty int,@Gold int
DECLARE @Rank tinyint,@Title tinyint,@Level tinyint,@Knights smallint,@Fame tinyint,@Strong tinyint,@Sta tinyint,@Dex tinyint,@Intel tinyint,@Cha tinyint,@Points tinyint
DECLARE @strSkill varchar(10),@strItem varchar(400),@strSerial varchar(400),@strQuest varchar(400)
DECLARE @UserInGame int,@CheckUserChar int
SELECT @UserInGame =COUNT(strCharID)FROM CURRENTUSER WHERE strCharID = @CharID
SELECT @CheckUserChar =COUNT(strUserId)FROM USERDATA WHERE strUserId = @CharID
IF @UserInGame 0
BEGIN
PRINT 'İşlem Yapılamadı, Kullancı Oyundadır.'
END
ELSE IF @CheckUserChar = 0
BEGIN
PRINT 'Böyle Bir Kullancı Bulunamadı'
END
ELSE
BEGIN
IF (@Day = 1)
BEGIN
SELECT @strUserId = [strUserID],@Rank = [Rank],@Title = [Title],@Level = [Level],@Exp = [Exp],@Loyalty = [Loyalty],@Knights = [Knights],@Fame = [Fame],@Strong = [Strong],@Sta = [Sta],@Dex = [Dex],@Intel = [Intel],@Cha = [Cha],@Points = [Points],@Gold = [Gold],@strSkill = [strSkill],@strItem = [strItem],@strSerial = [strSerial],@strQuest = [strQuest] FROM
-- DİKKAT: BURAYA AKTARMA ALACAINIZ DATABASE'İN İSMİNİ
-- YAZACAKSINIZ.
-- kn_online2 adında Yedeiniz mi var ?
-- O Zaman şöyle bir örnek vereyim. Kn_online2.Dbo.USERDATA
-- KARAKTERİN BULUNDUĞU DATABASE ADI BAŞLANĞIÇ
Kn_online2.Dbo.USERDATA
-- KARAKTERN BULUNDUU DATABASE ADI BİTİŞ
WHERE strUserID = @CharID
UPDATE USERDATA SETRank= @Rank,Title = @Title,Level= @Level,Exp= @Exp,Loyalty = @Loyalty,Knights = @Knights,Fame = @Fame,Strong = @Strong,Sta = @Sta,Dex = @Dex,Intel = @Intel,Cha = @Cha,Points = @Points,Gold = @Gold,strSkill = @strSkill,strItem = @strItem,strSerial = @strSerial,strQuest = @strQuest WHERE strUserId = @CharID
END
ELSE
BEGIN
PRINT'Lütfen en sona 1 yazın'
END
END
Kullanımı ...
1 Başlat > Tüm Programlar > Microsoft SQL Server > Query Analyzer ‘ a giriyoruz.
2 SQL Server’ a bağlanıyoruz ve açılan ekranda ” master ” yerine ” DBmizi ” seçiyoruz.
3 Seçtikten sonra aşağıdaki kodu kopyalayıp , yapıştırıyoruz ve F5 yaparak kodumuzu uyguluyoruz.