SQL 2005 VE 2021 İnventory Editör Çalıştırma

  • Konbuyu başlatan Konbuyu başlatan Necro
  • Başlangıç tarihi Başlangıç tarihi
Konu Yazar

Necro

Well-Known Member
May
2,915
81
Eğer 2005 veya 2021 kullanıosanız böyle bi problem yaşıosunuzdur cok kişiden duydum aslında olay basit matrix1536 verdi prosedürler 2000 uyumlu
yani
Kod:
int(4)
smallint
int(2)
Bunlar 2021 de "int" olarak kabul edilir değişiceğiniz prosedürler..

Kod:
--bu procedure Maktiris1536 tarafından eylenmiştir.. Necro Tarafından 2005 ve 2021 içinde eylenmiş:O

CREATE procedure itemleri_bul 
@StrUserID varchar(30)
AS
DECLARE
@length int, -- stritem uzunluğu
@i int, -- item'in stritem deki yeri
@dwid int, 
@dur int,
@duar int,
@StackSize1 int,
@Sira int,
@Row int,
@name varchar(100),
@extname varchar(100),
@ext int


    set @i = 14*0+1
    set @length = 401

select @row=count(*) from userdata where struserid=@StrUserID

delete from itemler where struserid=@StrUserID

if @row>0 
  begin

WHILE @i < @length
Begin

Select @dwid=cast(cast(substring(cast(substring(strItem, @i,4) as varbinary(4)), 4, 
1)+substring(cast(substring(strItem, @i,4) as varbinary(4)), 3, 1)+substring(cast(substring(strItem, @i,4) as 
varbinary(4)), 2, 1)+substring(cast(substring(strItem, @i,4) as varbinary(4)), 1, 1) as varbinary(4)) as int),
@dur = cast(cast(cast( substring(strItem, @i+5, 1) as varbinary(1))+cast(substring(strItem, @i+4, 1) as 
varbinary(1)) as varbinary(2)) as int),
@StackSize1 = cast(cast(cast( substring(strItem, @i+7, 1) as varbinary(1))+cast(substring(strItem, @i+6, 1) as 
varbinary(1)) as varbinary(2)) as int),
        @StrUserID = strUserID
        From UserData
        Where strUserID = @StrUserID




insert into itemler (dwid,stacksize,durability,struserid,sira,itembasicname,extname) 
values(@dwid,@stacksize1,@dur,@StrUserID,(@i-1) / 8,@extname,@name )

set @i=@i+8

end
end

GO

##################################

Kod:
--bu procedure Maktiris1536 tarafından eylenmiştir..
--Bu zaten eyliymiş :O

CREATE procedure itemleri_encode
@StrUserID varchar(30)
AS
DECLARE
@length int, -- stritem uzunluğu
@row int, -- yerine göre deişior.
@i int, -- item'in stritem deki yeri
@dwid int, -- dwid
@pos int,
@dur int,
@dur1 int,
@ext int,
@StackSize1 int,
@strName varchar(30),
@strExtName varchar(30),
@Cdwid varbinary(4),
@cdur varchar(2),
@Source tinyint,
@NEWdwid int,
@StackSize int,
@cstack varchar(2),
@sira int

    set @sira=0
    set @i = 14*0
    set @length = 401

select @row=count( * ) from userdata where struserid=@StrUserID

if @row>0 
  begin


Select @dwid=dwid,
@dur = durability,
@StackSize1 = stacksize,
        @StrUserID = strUserID
        From itemler
        Where strUserID = @StrUserID and sira=@sira

    Set @Cdwid = Substring(cast(@dwid as varbinary(4)), 4, 1) + Substring(cast(@dwid as varbinary(4)), 3, 1) + 
Substring(cast(@dwid as varbinary(4)), 2, 1) + Substring(cast(@dwid as varbinary(4)), 1, 1)
    Set @Cdur = cast(Substring(cast(@dur as varbinary(2)), 2, 1)+Substring(cast(@dur as varbinary(2)), 1, 1) as 
varchar(2))
    Set @Cstack = cast(Substring(cast(@StackSize1 as varbinary(2)), 2, 1)+Substring(cast(@StackSize1 as 
varbinary(2)), 1, 1) as varchar(2))


    update UserData set strItem = cast(cast(cast(@Cdwid as varchar(4)) + @Cdur + @Cstack as varchar(8))   as 
binary(400)) where strUserID = @strUserID


set @i=@i+8
set @sira=@sira+1



WHILE @sira < 50
Begin

Select @dwid=dwid,
@dur = durability,
@StackSize1 = stacksize,
        @StrUserID = strUserID
        From itemler
        Where strUserID = @StrUserID and sira=@sira

    Set @Cdwid = Substring(cast(@dwid as varbinary(4)), 4, 1) + Substring(cast(@dwid as varbinary(4)), 3, 1) + 
Substring(cast(@dwid as varbinary(4)), 2, 1) + Substring(cast(@dwid as varbinary(4)), 1, 1)
    Set @Cdur = cast(Substring(cast(@dur as varbinary(2)), 2, 1)+Substring(cast(@dur as varbinary(2)), 1, 1) as 
varchar(2))
    Set @Cstack = cast(Substring(cast(@StackSize1 as varbinary(2)), 2, 1)+Substring(cast(@StackSize1 as 
varbinary(2)), 1, 1) as varchar(2))


    update UserData set strItem = cast( substring(strItem, 1, @i) + cast(cast(@Cdwid as varchar(4)) + @Cdur + 
@Cstack as varchar(8)) + substring(strItem, @i+8, 401-@i) as binary(400)) where strUserID = @strUserID


set @i=@i+8
set @sira=@sira+1

end
end
delete from itemler


GO


...
 
Cevap: SQL 2005 VE 2021 İnventory Editör Çalıştırma

Teşekkürler kerem Elıne Sağlık :)
 
Cevap: SQL 2005 VE 2021 İnventory Editör Çalıştırma

ewy eline sağlık böyle sabit daha iyi oldu
 
Cevap: SQL 2005 VE 2021 İnventory Editör Çalıştırma

Teşekürler Arayanların İşine Yarayacak...
 
Cevap: SQL 2005 VE 2021 İnventory Editör Çalıştırma

Teşekkürler. Bi Yere SakLıyım LAzım olur.. :)
 
Cevap: SQL 2005 VE 2021 İnventory Editör Çalıştırma

TeşekküRLer KeRem aGa:o:
 
Cevap: SQL 2005 VE 2021 İnventory Editör Çalıştırma

Teşekürler Arayanların İşine Yarayacak...
Teşekürler Arayanların İşine Yarayacak...
 
Geri
Üst Alt