我正在从文件上传中收集元数据,并插入到数据库表中。结构是这样的:
// file Metadata struct
type MetaData struct {
Owner string
FileRows int64
FileSize string
FileName string
FileUuid string
LastUpdated string
}
这是我如何填充对结构的引用:
metaDataRow := MetaData{
Owner: "Fake Name",
FileRows: (int64)(count - 1),
FileSize: fileSize,
FileName: fileName,
FileUuid: handle,
LastUpdated: time.Now().Format(time.RFC822Z),
}
我的问题是,当我尝试将此 struct ref 插入我的数据库时,我收到一条错误消息:
在 &processor.MetaData{Owner:"Fake Name", FileRows:1499, FileSize:"308.9 kB", FileName:"small-file.csv", FileUuid:"1234567890qwerty", LastUpdated:"30 Jan 20 21:13 +0000"}
现在,正如我们可以清楚地看到的那样,Owner
它存在于结构中并且它具有一个值,其他的也是如此。我不确定查询分配是否在第一次查找时失败并在panic
那里,但我无法通过这个来查看其他人是否也失败了。这是我sqlx
NamedExec
的,因为我的 Struct 引用或绑定可能有问题?
// execute transaction
_, err = tx.NamedExec(`
INSERT INTO file_metadata (
owner,
file_rows,
file_size,
file_name,
file_uuid,
last_updated
) VALUES (
:Owner,
:FileRows,
:FileSize,
:FileName,
:FileUuid,
:LastUpdated
)
`, &metaDataRow)
我希望这是一个简单的修复,边界错字。