유니티 BGdatabase에서 기본 api 사용법

유니티 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));

기타 코드 예시

http://www.bansheegz.com/BGDatabase/CodeExamples/

댓글

Designed by JB FACTORY