本文并没有进行全面比较,但是当数据表存在于空字段中时,GORM库和SQL标准库之间的重要区别。修理MySQL如下:
PS:当然,当创建数据表时,规范是该字段不需要null默认值0来指定默认值。这只是为了演示两个库之间的差异。
输出:
可以看出,零值转换为0,并且没有异常。
输出:
在类型转换期间,它是异常的。检查扫描代码并包含一个convertAssignrows调用:
当查询结果类型为零并且目标类型为INT时,将引发类型转换的异常。但是,如果目标类型是指针类型,则不会异常,因此请将代码更改为:
输出:
结论:基于SQL库的查询需要注意结果字段的状况为无效,并且需要将相应的结构字段声明为指针类型。那么,为什么您需要根据GORM库考虑这种情况?
因为Gorm库本身已经完成了此兼容性。