Stored Procedures Bölümüne Girip
ACCOUNT_LOGIN Adlı Tabloya Çift Tıklıyoruz İçindekileri Silip Bunları kopyalıyoruz ! Ardından Apply+ok diyoruz..- Kod:
SET @pwd = null
SELECT @pwd = strPasswd FROM [dbo].[TB_USER] WHERE strAccountID = @AccountID and idays=6
IF @pwd IS null
BEGIN
SET @nRet = 0
--SET @nRet = 4
RETURN
END
ELSE IF @pwd <> @Password
BEGIN
SET @nRet = 0
--SET @nRet = 3
RETURN
END
DECLARE @PremiumServiceDEC varchar(21)
select @PremiumServiceDEC = count(straccountid) FROM premium_service WHERE strAccountID = @AccountID
if @PremiumServiceDEC = 0
begin
insert into PREMIUM_SERVICE (strAccountID, strType, nDays) VALUES (@AccountID, 2, 30)
end
SELECT @Nation = bNation, @CharNum = bCharNum FROM ACCOUNT_CHAR WHERE strAccountID = @AccountID
IF @@ROWCOUNT = 0
BEGIN
SET @nRet = 1
RETURN
END
IF @CharNum = 0
BEGIN
SET @nRet = 1
RETURN
END
ELSE
BEGIN
SET @nRet = @Nation+1
--SET @nRet = 1
RETURN
END
select @nRet = count(strAccountID) from Login_User where strAccountID = @AccountID
if @nRet = 0
begin
insert into Login_User (strAccountID) values (@AccountID)
end
GO
Create_Knights Tablosuna Girip içindekileri Boşaltıyoruz, Bunları koyup Apply + Ok Diyoruz. Clan Kurma Hatası gidiyor
- Kod:
/****** Object: Stored Procedure dbo.CREATE_KNIGHTS Script Date: 6/6/2006 6:03:32 PM ******/
-- modify by sungyong 2002.09.27
CREATE PROCEDURE CREATE_KNIGHTS
@nRet smallint OUTPUT,
@index smallint,
@nation tinyint,
@community tinyint,
@strName char(21),
@strChief char(21)
AS
DECLARE @Row tinyint, @knightsindex smallint, @knightsname char(21)
SET @Row = 0 SET @knightsindex = 0 SET @knightsname = ''
SELECT @Row = COUNT(*) FROM KNIGHTS WHERE IDNum = @index or IDName = @strName
IF @Row > 0 or @index = 0
BEGIN
SET @nRet = 3
RETURN
END
--SELECT @Row = COUNT(*) FROM KNIGHTS WHERE IDName = @strName
--IF @Row > 0
-- BEGIN
-- SET @nRet = 3
--RETURN
-- END
BEGIN TRAN
INSERT INTO KNIGHTS ( IDNum, Nation, Flag, IDName, Chief )
VALUES (@index, @nation, @community, @strName, @strChief )
INSERT INTO KNIGHTS_USER ( sIDNum, strUserID )
VALUES (@index, @strChief )
IF @@ERROR <> 0
BEGIN
ROLLBACK TRAN
SET @nRet = 6
RETURN
END
-- UPDATE USERDATA SET Knights = @index, Fame = 1 WHERE strUserId = @strChief -- 1 == Chief Authority
IF @@ERROR <> 0
BEGIN
ROLLBACK TRAN
SET @nRet = 6
RETURN
END
COMMIT TRAN
SET @nRet = 0
GO
Gelelim Sembolleri Sıfırlamaya..
Bildiğiniz Gibi Uskoda her ay Sağ taraf(LoyaltyMonthly) Sıfırlanır..
Bunu Otomatik yapmak için job uygulayabilirsinizde..
Query Analyzer girip
Bildiğiniz Gibi Uskoda her ay Sağ taraf(LoyaltyMonthly) Sıfırlanır..
Bunu Otomatik yapmak için job uygulayabilirsinizde..
Query Analyzer girip
- Kod:
Exec RESET_LOYALTY_MONTHLY
Diyoruz Loyalty Monthly Sıfırlanıyor!