我正在使用gorm ORM在 go 中编写一个小型、简单的网络应用程序。
由于数据库可能会独立于 Web 应用程序而失败,因此我希望能够识别与这种情况相对应的错误,以便我可以在不重新启动 Web 应用程序的情况下重新连接到我的数据库。
激励示例:
考虑以下代码:
var mrs MyRowStruct
db := myDB.Model(MyRowStruct{}).Where("column_name = ?", value).First(&mrs)
return &mrs, db.Error
在这种情况下,db.Error != nil
我如何以编程方式确定错误是否源于数据库连接问题?
从我的阅读中,我明白这gorm.DB
并不代表一个连接,所以gorm.Open
如果数据库连接失败,我什至不必担心重新连接或重新发出调用吗?
Go 中是否有处理数据库故障的通用模式?
相关分类