유니티 BGdatabase에서 기본 api 사용법
- 유니티게임개발/기초공부
- 2021. 5. 19.
유니티 BGdatabase에서 기본 api 사용법
BGdatabase에서 제공하는 c# 기본 API를 사용하여 데이터베이스에 접근하는 방법
https://www.bansheegz.com/BGDatabase/API/
네임스페이스 추가
using BansheeGz.BGDatabase;
BGdatabase에서 사용되는 네가지 주요 클래스
BGRepo.cs
BGRepo.cs는 데이터베이스이다. 기본 데이터베이스에 접근하기위해 BGRepo.I를 사용한다.
var repo = BGRepo.I;
이름이 table1인 테이블 가져오기
var meta = repo["table1"];
테이블의 고유 ID로 가져오기
var meta = repo[new BGId("HTAOdRaxlEGU1aefSG+Nbw")];
BGMetaEntity.cs
BGMetaEntity.cs는 1-n 개의 필드와 0-n 개의 행을 포함하는 데이터베이스 테이블이다.
첫번째 행을 가져오기
var entity = meta[0];
고유ID로 행 가져오기
var entity = meta[new BGId("HShOdRCxGEGU1aefSG+Nbw")];
BGEntity.cs
BGEntity.cs는 1-n 필드 값을 포함하는 테이블 행이다(row)
필드명 field_a의 정수값 가져오기
var i = entity.Get<int>("field_a");
행의 필드명 field_a 값에 정수값 설정하기
var i=0;
entity.Set<int>("field_a", i);
BGField.cs
BGField.cs는 고유한 유형이있는 테이블 필드이다.
인덱스로 entity 값 가져오기(3번 행, 필드의 값 가져오기)
var entityValue = field[3];
인덱스로 entity 값 설정하기(0번 행, 필드의 값에 값 설정하기)
field[0] = entityValue;
행의 고유ID로 entity 값 가져오기
var entityValue = field[new BGId("HThOdRCxlEGU1aefSG+Nbw")];
고유ID의 행에 entity 값 설정하기
field[new BGId("HThOdRCxlEGU1aefSG+Nbw")] = entityValue;
코드예시
using BansheeGz.BGDatabase;
var repo = BGRepo.I;
var meta = repo["table1"];
var entity = meta[5];
var intValue = entity.Get<int>("field_a");
entity.Set("field_b", intValue + 1);
var field = meta.GetField("fieldName");
BGId id = new BGId("4t8QmsYPP0Wbev6d90/hXg");
Debug.Log(field.GetValue(id));
기타 코드 예시
'유니티게임개발 > 기초공부' 카테고리의 다른 글
유니티 BGdatabase에서 코드 생성(code generation)사용하기 (0) | 2021.06.14 |
---|---|
유니티에서 사용자 정의 Inspector 만들기(에디터 스크립트) (0) | 2021.05.29 |
유니티 BGdatabase에서 데이터베이스 관리하기(테이블, 필드, 행) (0) | 2021.05.17 |
유니티 BGdatabase 초기 설정, 데이터베이스 생성하기 (0) | 2021.05.17 |
유니티 에디터에서 스크립트의 정수, 실수값을 슬라이더로 표시하기 (0) | 2021.05.16 |