返回顶部
首页 > 资讯 > 后端开发 > GO >如何防止我的整个表被删除
  • 943
分享到

如何防止我的整个表被删除

2024-04-04 23:04:13 943人浏览 安东尼
摘要

大家好,今天本人给大家带来文章《如何防止我的整个表被删除》,文中内容主要涉及到,如果你对golang方面的知识点感兴趣,那就请各位朋友继续看下去吧~希望能真正帮到你们,谢谢!问题内容如果在下面的第一

大家好,今天本人给大家带来文章《如何防止我的整个表被删除》,文中内容主要涉及到,如果你对golang方面的知识点感兴趣,那就请各位朋友继续看下去吧~希望能真正帮到你们,谢谢!

问题内容

如果在下面的第一个查询中找不到我的 somemodel 的任何内容,删除语句将删除整个表

delete from somemodels

防止这种情况的最佳方法是什么?

someModel := &SomeModel{}

db.Where("some_id = ? and other_id = ?", someModel.UserId, someModel.Id).First(&someModel)

db.Delete(&someModel)

目前我没有检查模型是否确实被发现并从数据库返回,我知道我应该检查,但是最好的方法是什么?

检查它是否不为零?型号.id > 0 ?


解决方案


正如您所猜测的,它会删除整个表,因为找不到记录,即模型中没有任何内容可以用作条件,因此将条件留空并删除整个表。

您可以检查是否找到记录,而无需检查模型本身。

例如:

if !db.Where("some_id = ? and other_id = ?", someModel.UserId, someModel.Id).First(&someModel).RecordNotFound {
    db.Delete(&someModel)
}

if err := db.Where("some_id = ? and other_id = ?", someModel.UserId, someModel.Id).First(&someModel).Error; err != nil {
    if gORM.IsRecordNotFoundError(err) {
        // record not found
    } else {
        // something else went wrong
    }
} else {
    db.Delete(&someModel)
}

好了,本文到此结束,带大家了解了《如何防止我的整个表被删除》,希望本文对你有所帮助!关注编程网公众号,给大家分享更多Golang知识!

您可能感兴趣的文档:

--结束END--

本文标题: 如何防止我的整个表被删除

本文链接: https://lsjlt.com/news/596745.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • 如何防止我的整个表被删除
    大家好,今天本人给大家带来文章《如何防止我的整个表被删除》,文中内容主要涉及到,如果你对Golang方面的知识点感兴趣,那就请各位朋友继续看下去吧~希望能真正帮到你们,谢谢!问题内容如果在下面的第一...
    99+
    2024-04-04
  • mysql如何删除整个表
    使用 drop table 语法删除 mysql 中的表,其中 table_name 为要删除的表名。步骤:1. 打开 mysql 终端;2. 连接数据库;3. 运行 drop tabl...
    99+
    2024-06-15
    mysql
  • 我们如何从MySQL表中删除一列?
    要从MySQL表中删除列,我们可以使用ALTER TABLE命令和DROP关键字。语法如下:Alter Table table_name DROP Column Column_name;以下是一个示例来演示它mysql> Alter ...
    99+
    2023-10-22
  • 我们如何从 MySQL 表中删除多行?
    我们可以使用 DELETE 语句和 WHERE 子句(该子句标识这些多行)来从 MySQL 表中删除多行。示例mysql> Select * from names; +------+-----------+ | id ...
    99+
    2023-10-22
  • php如何删除整个数据库
    本篇内容主要讲解“php如何删除整个数据库”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“php如何删除整个数据库”吧!在PHP中可以通过mysqli_query函数来删除数据库,删除语句如“my...
    99+
    2023-06-20
  • mysql删除整个表的方法是什么
    删除MySQL数据库中的整个表可以使用DROP TABLE语句。这个语句将完全删除指定的表,包括其中的所有数据和表结构。 删除单个...
    99+
    2024-04-12
    mysql
  • JavaScript中如何防止微信浏览器被整体拖动
    这篇文章给大家分享的是有关JavaScript中如何防止微信浏览器被整体拖动的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。在微信网页开发中,我使用的页面结构是在body下的con...
    99+
    2024-04-02
  • Docker如何删除停止的容器
    小编给大家分享一下Docker如何删除停止的容器,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!删除停止的容器docker&nbs...
    99+
    2024-04-02
  • 如何防止别人另存为我的网页、仿制我的站点
    这篇文章主要介绍了如何防止别人另存为我的网页、仿制我的站点,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。现在在互联网上仿制网站很普遍,那么如何防止他人下载自己的网站去仿制呢?...
    99+
    2023-06-08
  • Git如何从整个历史中删除一个文件
    这篇文章主要介绍了Git如何从整个历史中删除一个文件,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。从整个历史中删除一个文件代码要开源了,但发现其中包括密钥文件或内网ip怎么办...
    99+
    2023-06-27
  • sql语言中如何删除一个表
    这篇文章主要介绍了sql语言中如何删除一个表,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。sql语言中,删除一个表的命令是什么?SQL语言中...
    99+
    2024-04-02
  • sql如何删除表中某个数据
    要删除表中的特定数据,您可以使用DELETE语句。假设您有一个名为table_name的表,并且要删除具有特定条件的数据,则...
    99+
    2024-04-11
    sql
  • 被误删(永久删除、彻底删除)的文件如何找回
    如果文件被永久删除或彻底删除,以下是一些可能会帮助您找回文件的方法:1. 回收站:首先,检查一下您的回收站是否还有被删除的文件。如果...
    99+
    2023-09-07
    文件
  • python如何删除列表中的某个元素
    要删除列表中的某个元素,可以使用`remove()`方法。该方法接受一个参数,即要删除的元素。如果列表中存在该元素,`remove(...
    99+
    2023-09-26
    python
  • linux如何若文件被删除,系统会允许你在以后恢复这个被删除的文件
    ...
    99+
    2024-04-02
  • 我们如何从现有 MySQL 表的列中删除 NOT NULL 约束?
    我们可以使用 ALTER TABLE 语句从现有表的列中删除 NOT NULL 约束。示例假设我们有一个具有 NOT 的表“test123”列“ID”上的 NULL 约束如下 -mysql> DESCRIBE test123; +--...
    99+
    2023-10-22
  • 我们如何从现有 MySQL 表的列中删除 PRIMARY KEY 约束?
    我们可以通过使用 DROP 关键字和 ALTER TABLE 语句从现有表的列中删除 PRIMARY KEY 约束。示例假设我们有一个表“Player”,在“ID”列上有一个主键约束,如下 -mysql> DESCRIBE Playe...
    99+
    2023-10-22
  • 如何删除 MySQL 中的表?
    简介 MySQL 是一种流行的开源关系数据库管理系统 (RDBMS),广泛用于开发基于 Web 的应用程序。它最初由 MySQL AB 开发,现在归 Oracle Corporation 所有。 MySQL以其可靠性、可扩展性和易用性而闻...
    99+
    2023-10-22
  • Linux被挂载的路径如何删除
    要删除Linux上被挂载的路径,可以按照以下步骤进行操作:1. 查看挂载情况:使用mount命令或者df -h命令查看当前系统中的挂...
    99+
    2023-10-20
    Linux
  • linux如何允许一个文件被安全地删除
    ...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作