Files
Client/Server/Database/DBScript/모나토DB/Create_DBScript.sql
LGram16 dd97ddec92 Restructure repository to include all source folders
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>
2025-11-29 20:17:20 +09:00

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