본문 바로가기

SQL

게임 플레이어 테이블 생성: 게임 플레이어 정보를 저장하기 위한 테이블을 생성합니다.

반응형

게임 플레이어 정보를 저장하는 테이블은 게임 서비스 제공업체, 게임 커뮤니티, 또는 개인 개발자가 플레이어의 데이터를 관리하고 분석하는 데 중요합니다. 이 테이블은 플레이어 ID, 사용자명, 이메일, 등록 날짜, 게임 내 활동, 점수, 레벨, 성과 등의 정보를 포함할 수 있습니다. 다음은 게임 플레이어 정보를 저장하기 위한 테이블 생성을 위한 SQL 쿼리문 예제와 각각의 설명입니다.


1. 기본 게임 플레이어 테이블 생성
CREATE TABLE game_players (
    player_id INT AUTO_INCREMENT PRIMARY KEY,
    username VARCHAR(50),
    email VARCHAR(100),
    registration_date TIMESTAMP,
    last_login TIMESTAMP,
    high_score INT,
    current_level INT
);
설명: 플레이어 ID, 사용자명, 이메일, 등록 날짜, 마지막 로그인, 최고 점수, 현재 레벨 등을 저장합니다.

 

2. 플레이어 성과 테이블 생성
CREATE TABLE player_achievements (
    achievement_id INT AUTO_INCREMENT PRIMARY KEY,
    player_id INT,
    achievement_name VARCHAR(100),
    achievement_date TIMESTAMP,
    FOREIGN KEY (player_id) REFERENCES game_players(player_id)
);
설명: 성과 ID, 플레이어 ID, 성과 이름, 성과 달성 날짜 등을 저장합니다.

 

3. 플레이어 인벤토리 테이블 생성
CREATE TABLE player_inventory (
    inventory_id INT AUTO_INCREMENT PRIMARY KEY,
    player_id INT,
    item_name VARCHAR(100),
    quantity INT,
    FOREIGN KEY (player_id) REFERENCES game_players(player_id)
);
설명: 인벤토리 ID, 플레이어 ID, 아이템 이름, 수량 등을 저장합니다.

 

4. 플레이어 친구 목록 테이블 생성
CREATE TABLE player_friends (
    friendship_id INT AUTO_INCREMENT PRIMARY KEY,
    player_id INT,
    friend_player_id INT,
    friendship_status VARCHAR(50),
    start_date TIMESTAMP,
    FOREIGN KEY (player_id) REFERENCES game_players(player_id),
    FOREIGN KEY (friend_player_id) REFERENCES game_players(player_id)
);
설명: 친구 관계 ID, 플레이어 ID, 친구 플레이어 ID, 친구 관계 상태, 시작 날짜 등을 저장합니다.

 

5. 게임 세션 기록 테이블 생성
CREATE TABLE game_sessions (
    session_id INT AUTO_INCREMENT PRIMARY KEY,
    player_id INT,
    game_start TIMESTAMP,
    game_end TIMESTAMP,
    session_score INT,
    FOREIGN KEY (player_id) REFERENCES game_players(player_id)
);
설명: 세션 ID, 플레이어 ID, 게임 시작 시간, 게임 종료 시간, 세션 점수 등을 저장합니다.

 

6. 플레이어 메시지 테이블 생성
CREATE TABLE player_messages (
    message_id INT AUTO_INCREMENT PRIMARY KEY,
    sender_id INT,
    receiver_id INT,
    message_text TEXT,
    sent_date TIMESTAMP,
    FOREIGN KEY (sender_id) REFERENCES game_players(player_id),
    FOREIGN KEY (receiver_id) REFERENCES game_players(player_id)
);
설명: 메시지 ID, 발신자 ID, 수신자 ID, 메시지 내용, 발신 날짜 등을 저장합니다.

 

7. 플레이어 설정 테이블 생성
CREATE TABLE player_settings (
    setting_id INT AUTO_INCREMENT PRIMARY KEY,
    player_id INT,
    setting_name VARCHAR(50),
    setting_value VARCHAR(100),
    FOREIGN KEY (player_id) REFERENCES game_players(player_id)
);
설명: 설정 ID, 플레이어 ID, 설정 이름, 설정 값 등을 저장합니다.

 

8. 플레이어 게임 통계 테이블 생성
CREATE TABLE player_stats (
    stat_id INT AUTO_INCREMENT PRIMARY KEY,
    player_id INT,
    total_games_played INT,
    total_time_played INT,
    total_achievements INT,
    FOREIGN KEY (player_id) REFERENCES game_players(player_id)
);
설명: 통계 ID, 플레이어 ID, 총 게임 플레이 수, 총 플레이 시간, 총 성과 수 등을 저장합니다.

 

9. 플레이어 차단 목록 테이블 생성
CREATE TABLE player_blocks (
    block_id INT AUTO_INCREMENT PRIMARY KEY,
    player_id INT,
    blocked_player_id INT,
    block_date TIMESTAMP,
    FOREIGN KEY (player_id) REFERENCES game_players(player_id),
    FOREIGN KEY (blocked_player_id) REFERENCES game_players(player_id)
);
설명: 차단 ID, 플레이어 ID, 차단된 플레이어 ID, 차단 날짜 등을 저장합니다.

 

10. 플레이어 장비 테이블 생성
CREATE TABLE player_equipment (
    equipment_id INT AUTO_INCREMENT PRIMARY KEY,
    player_id INT,
    equipment_name VARCHAR(100),
    equipped_date TIMESTAMP,
    FOREIGN KEY (player_id) REFERENCES game_players(player_id)
);
설명: 장비 ID, 플레이어 ID, 장비 이름, 장착 날짜 등을 저장합니다.

관련 전문용어 설명
CREATE TABLE: 새로운 테이블을 생성하는 SQL 명령어입니다.
INT, VARCHAR, TIMESTAMP, DECIMAL, TEXT: 데이터 유형을 나타냅니다.
AUTO_INCREMENT: 자동으로 숫자를 증가시키는 속성입니다.
PRIMARY KEY: 각 행을 고유하게 식별하는 주 키입니다.
FOREIGN KEY: 다른 테이블의 주 키를 참조하는 외래 키입니다.

반응형