Update语句导致异常行为

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Update语句导致异常行为相关的知识,希望对你有一定的参考价值。

我有一个Postgresql数据库,并使用以下SQL创建了一个表:

create table aisle_slots (
    id          serial not null primary key,
    occupied    boolean,
    aisle_index int,
    x           real,
    y           real,
    rot         real
);

插入和删除查询在此表上工作正常。

每种类型的查询都可以在数据库中的其他所有表上正常工作。

但是,运行以下更新查询会导致异常行为:

update aisle_slots
set occupied = true
where id = 3

在pgAdmin中运行此命令将锁定应用程序(它停留在“等待查询执行完成...”上)。在Psycopg2中运行它会立即返回,但实际上不会在数据库中进行任何更改。都不会导致任何错误消息或日志输出。

select version()输出:

PostgreSQL 9.6.13 on x86_64-pc-linux-gnu, compiled by gcc (GCC) 4.4.7 20120313 (Red Hat 4.4.7-16), 64-bit

这里可能发生什么?

答案

如提及here

重新启动pgadmin,然后重试查询。

pgadmin似乎很难处理连接超时,因此您将一段时间后,通常需要重新启动整个pgadmin应用程序不使用它,然后经历扩展树的过程再次回到您正在使用的桌子上。

这的确使我怀疑pgadmin的作者是否真的吃了他们自己的狗粮,因为与说SQL Server的Management Studio

以上是关于Update语句导致异常行为的主要内容,如果未能解决你的问题,请参考以下文章

片段中的getView()导致抛出异常,不确定原因

Seekbar进度drawable异常行为onPause

asp.NET 的update错误,请高人进来看下

关闭从另一个对话框片段启动的对话框片段会导致非法状态异常

异常和TCP通讯

Fragment 和 FragmentStatePagerAdapter 中带有 ViewPager 的片段导致异常(带有完整示例)