gpt4 book ai didi

sql-server - GORM GOLANG/Go msSQL UNIQUEIDENTIFIER 内部结构

转载 作者:行者123 更新时间:2023-12-05 08:03:39 26 4
gpt4 key购买 nike

你好,我有一个名为 person 的结构,当我调用我的 rest 端点并从 mssql 数据库(其中 ID 是ID UNIQUEIDENTIFIER DEFAULT NEWSEQUENTIALID() )

package entities import ( mssql "github.com/denisenkom/go-mssqldb" "time" )
type Person struct {
ID mssql.UniqueIdentifier
FullName string Comments
string DateCreated time.Time
DateModified time.Time
}

然后 golang 返回带有数字数组的响应当我将 ID 更改为字符串时,它有不可读的字符。不良 react 在像 api 这样的调用之后,我得到了

{ "ID": [ 160,63, 67,62,243,107,20,16,143,174,0, 45,192,113,147,0 ],
"FullName": "Tony Stark",
"Comments": "",
"DateCreated": "2022-04-06T10:12:18.523Z",
"DateModified": "2022-04-06T10:12:18.523Z"
}

我想要这样的回应

{ "ID": "a0eebc99-9c0b-4ef8-bb6d-6bb9bd380a11",
"FullName": "Tony Stark",
"Comments": "",
"DateCreated": "2022-04-06T10:12:18.523Z",
"DateModified": "2022-04-06T10:12:18.523Z" }
func Getperson(w http.ResponseWriter, r *http.Request) {
var persons []entities.person
database.Instance.Raw("SELECT * FROM Persons").Scan(&person)
w.Header().Set("Content-Type", "application/json")
w.WriteHeader(http.StatusOK)
json.NewEncoder(w).Encode(person)
}
func Connect(connectionString string) {
//dsn := "sqlserver://sa:*****@127.0.0.1:1433?database=mydbforgo"
Instance, err = gorm.Open(sqlserver.Open(connectionString), &gorm.Config{})
if err != nil {
log.Fatal(err)
panic("Cannot connect to DB")
}
log.Println("Connected to Database...")
}

我哪里有问题?

最佳答案

您实际上需要对该值调用 .String(例如:someStruct.uniqueID.String())以获得 GUID 的字符串表示形式: https://github.com/denisenkom/go-mssqldb/blob/master/uniqueidentifier.go#L72-L80

关于sql-server - GORM GOLANG/Go msSQL UNIQUEIDENTIFIER 内部结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71784800/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com