GoFrame 高級(jí)特性-類型識(shí)別

2022-04-02 14:14 更新

使用?GoFrame ORM?查詢數(shù)據(jù)時(shí),由于字段值是一個(gè)泛型對(duì)象,返回的數(shù)據(jù)類型將會(huì)被自動(dòng)識(shí)別映射到Go變量類型,作為泛型的具體值。

例如:

  • 當(dāng)字段類型為?int(xx)?時(shí),查詢到的字段值類型將會(huì)被識(shí)別會(huì)?int?類型
  • 當(dāng)字段類型為?varchar(xxx)/char(xxx)/text?等類型時(shí)將會(huì)被自動(dòng)識(shí)別為?string?類型
  • ……

以下以?mysql?類型為例,介紹數(shù)據(jù)庫類型與Go變量類型的自動(dòng)識(shí)別映射關(guān)系: 

版本可能隨時(shí)迭代更新,具體可查看源碼 https://github.com/gogf/gf/blob/master/database/gdb/gdb_core_structure.go 

 數(shù)據(jù)庫類型  Go變量類型
 ?*char?  ?string?
 ?*text?  ?string?
 ?*binary?  ?bytes?
 ?*blob?  ?bytes?
 ?*int?  ?int?
 ?*money?  ?float64?
 ?bit?  ?int?
 ?big_int?  ?int64?
 ?float?  ?float64?
 ?double?  ?float64?
 ?decimal?  ?float64?
 ?bool?  ?bool?
 ?date?  ?time.Time?
 ?datetime?  ?time.Time?
 ?timestamp?  ?time.Time?
 其他  ?string?

這一特性對(duì)于需要將查詢結(jié)果進(jìn)行編碼,并通過例如?JSON?方式直接返回給客戶端來說將會(huì)非常友好。


以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)