Move git root from Client/ to src/ to track all source code: - Client: Game client source (moved to Client/Client/) - Server: Game server source - GameTools: Development tools - CryptoSource: Encryption utilities - database: Database scripts - Script: Game scripts - rylCoder_16.02.2008_src: Legacy coder tools - GMFont, Game: Additional resources 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
135 lines
2.7 KiB
Transact-SQL
135 lines
2.7 KiB
Transact-SQL
|
|
|
|
CREATE TABLE dbo.TblCharBase
|
|
(
|
|
CID INT NOT NULL PRIMARY KEY CLUSTERED (CID DESC)
|
|
, ParentCID INT NULL FOREIGN KEY REFERENCES dbo.TblCharBase(CID)
|
|
, CharName VARCHAR(20) NOT NULL UNIQUE
|
|
, Level TINYINT NULL
|
|
, Exp INT
|
|
, Hp SMALLINT
|
|
, Mp SMALLINT
|
|
, IsDelete CHAR(1) DEFAULT('N')
|
|
)
|
|
|
|
GO
|
|
|
|
CREATE TABLE dbo.TblUserInfo
|
|
(
|
|
UserID VARCHAR(20) NOT NULL
|
|
, CID INT NOT NULL FOREIGN KEY REFERENCES dbo.TblCharBase(CID)
|
|
, Slot TINYINT NULL
|
|
, CONSTRAINT pk_TblUserInfo_UserID_CID PRIMARY KEY CLUSTERED (UserID,CID)
|
|
)
|
|
|
|
GO
|
|
|
|
CREATE TABLE dbo.TblCharTime
|
|
(
|
|
CID INT NOT NULL PRIMARY KEY CLUSTERED (CID DESC)
|
|
, CreateTime SMALLDATETIME NULL DEFAULT(GETDATE())
|
|
, UpdateTime SMALLDATETIME NULL DEFAULT(GETDATE())
|
|
, CONSTRAINT FK_TblCharBase_TblCharTime FOREIGN KEY (CID) REFERENCES dbo.TblCharBase(CID)
|
|
)
|
|
|
|
GO
|
|
|
|
CREATE TABLE dbo.TblCharSkill
|
|
(
|
|
CID INT NOT NULL
|
|
, SkillType SMALLINT NULL
|
|
, SkillLevel TINYINT NULL
|
|
, CONSTRAINT PK_TblCharSkill_CID_SKillType PRIMARY KEY CLUSTERED (CID,SkillType)
|
|
, CONSTRAINT FK_TblCharBase_TblCharSkill FOREIGN KEY (CID) REFERENCES dbo.TblCharBase(CID)
|
|
)
|
|
|
|
GO
|
|
|
|
CREATE TABLE dbo.TblCharItem
|
|
(
|
|
ItemID BIGINT NOT NULL PRIMARY KEY NONCLUSTERED
|
|
, CID INT
|
|
, StoreType CHAR(2)
|
|
, xPos INT
|
|
, yPos INT
|
|
, ItemTypeID SMALLINT NULL
|
|
, ParentItemID BIGINT NULL FOREIGN KEY REFERENCES dbo.TblCharItem(ItemID)
|
|
, Durability TINYINT
|
|
, BundleCount TINYINT
|
|
, CreateTime DATETIME
|
|
, CreateZone INT
|
|
)
|
|
|
|
GO
|
|
|
|
CREATE CLUSTERED INDEX IDX_TblCharItem_CID ON dbo.TblCharItem(CID)
|
|
|
|
|
|
GO
|
|
|
|
CREATE TABLE dbo.TblCharActor
|
|
(
|
|
CID INT NOT NULL PRIMARY KEY CLUSTERED (CID DESC)
|
|
, Sex TINYINT
|
|
, Class TINYINT
|
|
, SuRa TINYINT
|
|
, JobLevel TINYINT
|
|
, JobExp TINYINT
|
|
, HeadModel TINYINT
|
|
, HeadMapping TINYINT
|
|
, EyeMapping TINYINT
|
|
, Gold INT
|
|
, Status TINYINT
|
|
, STR TINYINT
|
|
, CON TINYINT
|
|
, WIZ TINYINT
|
|
, DEX TINYINT
|
|
, CONSTRAINT FK_TblCharBase_TblCharActor FOREIGN KEY (CID) REFERENCES dbo.TblCharBase(CID)
|
|
)
|
|
|
|
GO
|
|
|
|
CREATE TABLE dbo.TblCharPos
|
|
(
|
|
CID INT NOT NULL PRIMARY KEY CLUSTERED (CID DESC)
|
|
, xPos INT
|
|
, yPos INT
|
|
, Layer TINYINT
|
|
, ServerID INT
|
|
, ZoneID INT
|
|
, CONSTRAINT FK_TblCharActor_TblCharPos FOREIGN KEY (CID) REFERENCES dbo.TblCharActor(CID)
|
|
)
|
|
|
|
GO
|
|
|
|
|
|
-- [프로시져] 유저ID( char[16] ) 을 넘겨 플레이어 '갯수' 를 알아내는 쿼리 (IsDeleted == false 삭제되지 않은 플레이어)
|
|
-- [프로시져] 유저ID( char[16] ) 을 넘겨 플레이어캐릭터의 CID ... 들을 알아내는 쿼리
|
|
|
|
CREATE PROC GetPlayerCount @UserID VARCHAR(20)
|
|
AS
|
|
SET NOCOUNT ON
|
|
|
|
SELECT COUNT(B.CID) FROM TblUserInfo A JOIN TblCharBase B
|
|
ON A.CID = B.CID
|
|
WHERE A.UserID = @UserID AND IsDelete = 'N'
|
|
|
|
GO
|
|
|
|
CREATE PROC GetPlayerCID @UserID VARCHAR(20)
|
|
AS
|
|
SET NOCOUNT ON
|
|
|
|
SELECT A.CID,Slot FROM TblUserInfo A JOIN TblCharBase B
|
|
ON A.CID = B.CID
|
|
WHERE A.UserID = @UserID AND IsDelete = 'N'
|
|
|
|
GO
|
|
|
|
|
|
|
|
GO
|
|
|
|
|
|
|