86 lines
2.1 KiB
Transact-SQL
86 lines
2.1 KiB
Transact-SQL
USE [LosaGame]
|
|
GO
|
|
|
|
/****** Object: StoredProcedure [dbo].[game_practice_set_Time] Script Date: 11/08/2017 10:09:35 ******/
|
|
IF EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[game_practice_set_Time]') AND type in (N'P', N'PC'))
|
|
DROP PROCEDURE [dbo].[game_practice_set_Time]
|
|
GO
|
|
|
|
USE [LosaGame]
|
|
GO
|
|
|
|
/****** Object: StoredProcedure [dbo].[game_practice_set_Time] Script Date: 11/08/2017 10:09:35 ******/
|
|
SET ANSI_NULLS ON
|
|
GO
|
|
|
|
SET QUOTED_IDENTIFIER ON
|
|
GO
|
|
|
|
|
|
--IF OBJECT_ID('dbo.game_practice_set_Time','P') IS NOT NULL
|
|
--
|
|
-- DROP PROC dbo.game_practice_set_Time
|
|
--
|
|
--GO
|
|
|
|
-- =============================================
|
|
-- Subject : dbo.game_practice_set_Time
|
|
-- DBA :
|
|
-- DATE : 2015-06-17
|
|
-- Description : 훈련 데이터 생성
|
|
-- =============================================
|
|
|
|
|
|
CREATE PROCEDURE [dbo].[game_practice_set_Time]
|
|
|
|
|
|
@ACCOUNT_IDX INT, -- 유저 인덱스
|
|
@PRACTICE_IDX INT, -- 연습 인덱스
|
|
@PRACTICE_GRADE INT, -- 수련장 등급
|
|
@PRACTICE_COUNT INT, -- 수련장 입장횟수
|
|
@PRACTICE_TIME INT, -- 수련장 시간
|
|
@PRACTICE_RANK INT -- 수련장 랭크
|
|
|
|
AS
|
|
|
|
SET NOCOUNT ON;
|
|
SET LOCK_TIMEOUT 10000;
|
|
|
|
DECLARE @nReturn INT
|
|
SET @nReturn=0 -- True
|
|
|
|
BEGIN TRAN
|
|
|
|
IF (EXISTS(SELECT * FROM dbo.userPracticeDB WITH (NOLOCK) WHERE AccountIDX = @ACCOUNT_IDX AND PracticeIDX = @PRACTICE_IDX))
|
|
BEGIN
|
|
UPDATE dbo.userPracticeDB
|
|
SET PracticeGrade = @PRACTICE_GRADE, PracticeCount=@PRACTICE_COUNT
|
|
, PracticeTime=@PRACTICE_TIME, PracticeRank=@PRACTICE_RANK
|
|
, UpdateDate = GETDATE()
|
|
WHERE AccountIDX = @ACCOUNT_IDX
|
|
AND PracticeIDX = @PRACTICE_IDX;
|
|
END
|
|
ELSE
|
|
BEGIN
|
|
INSERT INTO dbo.userPracticeDB (AccountIDX, PracticeIDX, PracticeCount, PracticeGrade, PracticeTime, PracticeRank, UpdateDate, regDate)
|
|
VALUES ( @ACCOUNT_IDX, @PRACTICE_IDX, @PRACTICE_COUNT, @PRACTICE_GRADE, @PRACTICE_TIME, @PRACTICE_RANK, GETDATE(), GETDATE());
|
|
END
|
|
|
|
|
|
IF (@@ROWCOUNT = 0) or (@@ERROR <> 0)
|
|
BEGIN
|
|
ROLLBACK TRAN
|
|
SELECT -1;
|
|
RETURN;
|
|
END
|
|
|
|
COMMIT TRAN
|
|
|
|
SELECT @nReturn;
|
|
RETURN;
|
|
|
|
|
|
GO
|
|
|
|
|