当前位置: 首页 > 知识库问答 >
问题:

MySQL-更新表时出现问题

葛修永
2023-03-14

我有一个表,我想用另一个表中的值更新该表,我正在使用以下代码:

UPDATE TableA
SET Value = (
    SELECT TableB.Value2
    FROM TableB
    WHERE TableA.id=TableB.ta_id
);

尽管事实上,表。id是tableA的主键,我不断得到以下错误:

错误代码:1175。您使用的是安全更新模式,并且您试图更新一个没有使用键列禁用安全模式的表,请在“首选项”中切换该选项-

我做错了什么?

共有1个答案

喻选
2023-03-14

问题是您的主查询中没有使用Where语句。在您的情况下,它将修改所有表。如果这是您想要做的,您可以取消激活mysql的安全模式,或者执行一个始终为真的条件,如

UPDATE TableA,TableB
SET TableA.Value = TableB.Value2
WHERE TableA.id = TableB.ta_id;
 类似资料:
  • 我试图执行一个简单的更新记录函数,但它给我一个错误,我找不到原因或任何其他人有它。 可以在以下位置找到示例测试项目:https://github.com/billbarni/jooq-studer-h2-test Java代码: 数据库创建表达式: 梯度发生器配置: Java在编译之前给了我这个错误: 在DSLContext中执行更新(R) 这个问题背后的原因是什么?我做错了什么? 观察。:我有2

  • 问题内容: 我正在尝试使用一些conda环境创建一个docker容器。当我在交互模式下运行容器时 运行没有问题。但是,每当我尝试使用Docker文件执行这些命令时,我都会收到 Docker文件如下所示: 因此似乎使用了sh而不是bash,所以我将Dockerfile编辑为以下内容: 有以下错误 问题答案: 您必须在构建期间使用变量将anaconda添加到PATH中,然后才能在Dockerfile中

  • 我在下载图像和更新ImageView时遇到问题,我正在使用ExecutorServices下载图像,但我面临的问题是,作为场景,我正在使用基本适配器在列表中显示Imageview。图像被下载,但这两个图像都只在firstImage View中更新。 所以位图在同一个imageView中得到了更新,有人遇到过类似的问题吗 例如,我正在下载2个图像,它正在创建2个ImageDownloader实例,所

  • 问题内容: 我已经阅读了有关创建触发器的Oracle文档,并且正在按照显示的方式进行操作,但是这是行不通的。我的目标是使用出现在TPM_TRAININGPLAN表中的最小STARTDATE更新TPM_PROJECT表。因此,每次有人更新TPM_TRAININGPLAN中的STARTDATE列时,我都想更新TPM_PROJECT表。这是我正在尝试的方法: 创建的触发器没有错误,但是我得到了警告: 当

  • 问题内容: 我有一个使用Hibernate和DB2的Java Web应用程序,iSeries并且在更新表期间出现以下错误: 更新DB2 for iSeries表时出现错误SQL7008 问题答案: 通过对该错误消息进行一些谷歌搜索,我注意到在非事务模式下运行插入/更新时会发生这种情况。这里给出解释。 发生这种情况的原因是,您尝试更新的表未记录日志,并且您的更新正在事务中运行。 通常,您应始终提交事

  • 在更新我的android应用程序时,我更新了所有的依赖项。当我测试发布版本时,我收到以下错误: 任何帮助都将不胜感激。