Das bedeutet eigentlich, dass der Client den Charnamen (@im_szName) nicht weitergibt.
Und wenn ich in meine Prozedur schaue, wird @im_szName dort gar nicht verarbeitet. :o
Code:
IF @iGu = 'S8' -- 데이터 전체 가져오기
BEGIN
-- 뱅크 정보 가져오기 character 별
SELECT @om_chLoginAuthority = m_chLoginAuthority
FROM ACCOUNT.ACCOUNT_DBF.dbo.ACCOUNT_TBL_DETAIL
WHERE account = @iaccount
SELECT m_chLoginAuthority = @om_chLoginAuthority,
A.account,
A.m_idPlayer,
A.playerslot,
A.serverindex,
A.dwWorldID,
A.m_szName,
A.m_dwIndex,
A.m_vScale_x,
A.m_dwMotion,
A.m_vPos_x,
A.m_vPos_y,
A.m_vPos_z,
A.m_fAngle,
A.m_szCharacterKey,
A.m_idPlayer,
A.m_nHitPoint,
A.m_nManaPoint,
A.m_nFatiguePoint,
A.m_nFuel,
A.m_dwSkinSet,
A.m_dwHairMesh,
A.m_dwHairColor,
A.m_dwHeadMesh,
A.m_dwSex,
A.m_dwRideItemIdx,
A.m_dwGold,
A.m_nJob,
A.m_pActMover,
A.m_nStr,
A.m_nSta,
A.m_nDex,
A.m_nInt,
A.m_nLevel,
A.m_nMaximumLevel,
A.m_nExp1,
A.m_nExp2,
A.m_aJobSkill,
A.m_aLicenseSkill,
A.m_aJobLv,
A.m_dwExpertLv,
A.m_idMarkingWorld,
A.m_vMarkingPos_x,
A.m_vMarkingPos_y,
A.m_vMarkingPos_z,
A.m_nRemainGP,
A.m_nRemainLP,
A.m_nFlightLv,
A.m_nFxp,
A.m_nTxp,
A.m_lpQuestCntArray,
m_aCompleteQuest = ISNULL(A.m_aCompleteQuest,'$'),
A.m_chAuthority,
A.m_dwMode,
A.m_idparty,
A.m_idCompany,
A.m_idMuerderer,
A.m_nFame,
A.m_nDeathExp,
A.m_nDeathLevel,
A.m_dwFlyTime,
A.m_nMessengerState,
A.End_Time,
A.BlockTime,
A.blockby,
A.isblock,
A.TotalPlayTime,
A.CreateTime,
A.m_dwSkillPoint,
B.m_aSlotApplet,
B.m_aSlotQueue,
B.m_SkillBar,
C.m_aSlotItem,
D.m_Inventory,
D.m_apIndex,
D.m_adwEquipment,
D.m_dwObjIndex,
m_idGuild = ISNULL(G.m_idGuild,'0'),
m_idWar = ISNULL(G.m_idWar,'0'),
A.m_tmAccFuel,
A.m_tGuildMember,
m_dwSMTime = ISNULL(H.m_dwSMTime,'NULL') ,
SkillInfluence = ISNULL(E.SkillInfluence,'$'),
F.m_extInventory,
F.m_InventoryPiercing,
A.m_dwReturnWorldID,
A.m_vReturnPos_x,
A.m_vReturnPos_y,
A.m_vReturnPos_z,
last_connect = @last_connect,
A.m_SkillPoint,
A.m_SkillLv,
A.m_SkillExp,
-------------- (2006 11 13 추가 부분 : Attedant Event)
A.dwEventFlag,
A.dwEventTime,
A.dwEventElapsed
-------------- (Version8 : PK System)
,A.PKValue as m_nPKValue
,A.PKPropensity as m_dwPKPropensity
,A.PKExp as m_dwPKExp
-------------- (Version8 : Angel System)
,A.AngelExp as m_nAngelExp
,A.AngelLevel as m_nAngelLevel
------------------- Version9 Pet
,F.szInventoryPet as szInventoryPet
,A.m_dwPetId
, A.m_nExpLog, A.m_nAngelExpLog
, m_nCoupon
---------------- ver.13
, A.m_nLayer
---------- Ver 15
, A.m_aCheckedQuest
, A.m_nCampusPoint
, A.idCampus
, isnull(R.m_nRestPoint, 0) m_nRestPoint
, isnull(R.m_LogOutTime, 0) m_LogOutTime
FROM CHARACTER_TBL A
inner join TASKBAR_TBL B on A.m_idPlayer = B.m_idPlayer and A.serverindex = B.serverindex
inner join TASKBAR_ITEM_TBL C on B.m_idPlayer = C.m_idPlayer and B.serverindex = C.serverindex
inner join INVENTORY_TBL D on C.m_idPlayer = D.m_idPlayer and C.serverindex = D.serverindex
inner join SKILLINFLUENCE_TBL E on D.m_idPlayer = E.m_idPlayer and D.serverindex = E.serverindex
inner join INVENTORY_EXT_TBL F on E.m_idPlayer = F.m_idPlayer and E.serverindex = F.serverindex
left outer join GUILD_MEMBER_TBL G on F.serverindex = G.serverindex and F.m_idPlayer = G.m_idPlayer
left outer join BILING_ITEM_TBL H on F.serverindex = H.serverindex and F.m_idPlayer = H.m_idPlayer
left outer join tblRestPoint R on F.serverindex = R.serverindex and F.m_idPlayer = R.m_idPlayer
WHERE A.m_idPlayer = @im_idPlayer
AND A.serverindex = @iserverindex
AND A.account = lower(@iaccount)
insert into CHARACTER_TBL_validity_check (m_idPlayer, serverindex, account, m_szName, TotalPlayTime, m_dwGold, m_nLevel, m_nJob, sum_ability, CreateTime)
select m_idPlayer, serverindex, account, m_szName, TotalPlayTime, m_dwGold, m_nLevel, m_nJob, (m_nStr + m_nSta + m_nDex + m_nInt), CreateTime
from CHARACTER_TBL (nolock)
where m_idPlayer = @im_idPlayer and TotalPlayTime <= 1
and (m_dwGold >= 1 or m_nLevel >= 2 or m_nJob >= 1 or (m_nStr + m_nSta + m_nDex + m_nInt) > 60)
declare @m_dwGold_old bigint, @m_dwGold_now bigint
select @m_dwGold_old = m_dwGold from tblLogout_Penya (nolock) where m_idPlayer = @im_idPlayer
select @m_dwGold_now = m_dwGold from CHARACTER_TBL (nolock) where serverindex = @iserverindex and m_idPlayer = @im_idPlayer
if (@m_dwGold_old <> @m_dwGold_now)
begin
insert into tblLogout_Penya_Diff_Log (serverindex, m_idPlayer, m_dwGold_old, regdate_old, m_dwGold_now)
select serverindex, m_idPlayer, @m_dwGold_old, regdate, @m_dwGold_now
from tblLogout_Penya (nolock)
where m_idPlayer = @im_idPlayer and serverindex = @iserverindex
end
-- 뱅크 정보 가져오기 account 별
-- DECLARE @bank TABLE (m_idPlayer CHAR(6),serverindex CHAR(2),playerslot INT)
--
-- INSERT @bank
-- (m_idPlayer,serverindex,playerslot)
-- SELECT m_idPlayer,serverindex,playerslot
-- FROM CHARACTER_TBL
-- WHERE account = @iaccount
-- AND isblock = 'F'
-- ORDER BY playerslot
SELECT a.m_idPlayer,
c.playerslot,
a.m_Bank,
a.m_apIndex_Bank,
a.m_dwObjIndex_Bank,
a.m_dwGoldBank,
a.m_BankPw,
b.m_extBank,
b.m_BankPiercing
,b.szBankPet
FROM dbo.BANK_TBL a,
dbo.BANK_EXT_TBL b,
dbo.CHARACTER_TBL c
WHERE a.m_idPlayer = b.m_idPlayer
AND a.serverindex = b.serverindex
AND b.m_idPlayer = c.m_idPlayer
AND b.serverindex = c.serverindex
AND c.account = @iaccount
AND c.isblock = 'F'
ORDER BY c.playerslot
-- 휴대 가방 가져오기
SELECT a.nPocket,
a.szItem,
a.szIndex,
a.szObjIndex,
a.bExpired,
a.tExpirationDate,
b.szExt,
b.szPiercing,
b.szPet
FROM tblPocket as a inner join tblPocketExt as b
on a.serverindex = b.serverindex AND a.idPlayer = b.idPlayer AND a.nPocket = b.nPocket
WHERE a.serverindex = @iserverindex AND a.idPlayer = @im_idPlayer
ORDER BY a.nPocket
RETURN
END
/*
데이터 전체 가져오기 New
ex )
CHARACTER_STR 'S8',@im_idPlayer,@iserverindex,@iaccount
CHARACTER_STR 'S8','425120','01','ata3k'
*/
Unten am exec Beispiel sieht man auch, dass @im_szName gar nicht gebraucht wird (zumindest nicht beim Step 8).