我使用GORM来映射MySQL DB表,这些表可能有额外的列,而这些列不是GORM模型的一部分。从这样的表中选择任何行都会崩溃,因为GORM发出SELECT * FROM ...查询并尝试扫描模型结构中的结果,这显然是不可能的,因为返回的列比预期的要多。有没有办法强制GORM显式地命名发出的SELECT查询中的列?
我已经使用UPDATE查询在MySQL工作台中手动测试了该模式,并且我了解到,只有当没有为updated_at列提供特定值时,on update current_timestamp属性才会生效;但是,当提供了特定值时接下来,我将使用gorm在我的go项目中处理DAO内容。对于更新表中的行,一切都运行得非常好,直到我需要实现一个只更新last_login时间戳列而不更新updated_at列的方法。由于某些原因(可能是因为我在模式中设置了on update current