-
Notifications
You must be signed in to change notification settings - Fork 351
bobohume edited this page Feb 19, 2021
·
1 revision
包含sql orm,只支持简单orm,原生sql
游戏大部分都是内存做缓存,db做落库,极少数存在组合sql的情况,如果是这种利用原生sql,写sql语句即可
很多orm第三库太重度,轻度orm适合游戏,目前orm只支持mysql
具体参考db_test
SimplePlayerData struct{
AccountId int64 `sql:"primary;name:account_id"`
PlayerId int64 `sql:"primary;name:player_id"`
PlayerName string `sql:"name:player_name"`
Level int `sql:"name:level"`
Sex int `sql:"name:sex"`
Gold int `sql:"name:gold"`
DrawGold int `sql:"name:draw_gold"`
Vip [8]int `sql:"name:vip"`
LastLogoutTime int64 `sql:"datetime;nameg:last_logout_time"`
LastLoginTime int64 `sql:"datetime;name:last_login_time"`
PLayerBlob *message.PlayerData `sql:"blob;name:plaeyr_blob"`
PLayerBlobJson *AA `sql:"json;name:plaeyr_blob_json"`
}
data := &SimplePlayerData{PLayerBlob:&message.PlayerData{}, PLayerBlobJson:&AA{A:1, B: map[int]string{1:"test", 2:"test2"}}, Vip:[8]int{1,2,3,4,5,6,7,8}}
t.Log(db.InsertSql(data, "tbl_player"))
t.Log(db.InsertSqlEx(data, "tbl_player", "account_id", "gold", "plaeyr_blob", "plaeyr_blob_json", "vip0", "vip7"))
t.Log(db.UpdateSql(data, "tbl_player"))
t.Log(db.UpdateSqlEx(data, "tbl_player", "gold", "plaeyr_blob", "plaeyr_blob_json", "vip7"))