以下のモデルがあり、それに基づいたテーブルが作成されている場合、
type User struct { gorm.Model Name string `gorm:"size:255"` Password string `gorm:"size:255"` Email string `gorm:"size:255"` }
goのormフレームワークであるgormを使ってテーブルを削除しようとすると、db.DropTable(&User{})
とdb.DropTable("users")
の二つの選択肢があるかと思いますが、これら二つの違いを教えていただけないでしょうか?
db.DropTable(&User{})
はUserモデルを削除するため、前述のモデルをコメントアウトすると実行できなくなり、db.DropTable("users")
は指定した文字列に該当するテーブル自体を削除するため、モデルをコメントアウトしても実行できることは判明していますが、それ以外で機能的な違い(例えば、処理をするときの負荷など)があればご教示いただけると幸いです。(できれば、運用上の使い分けも含めて)
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/03/21 04:54