【发布时间】:2012-04-06 00:24:31
【问题描述】:
我有一张有 4 列的表格 c1, c2, c3, c4。 c1 和 c2 构成表的主键。
当我在 Java 中运行以下命令时,它会挂在我的应用程序中。
DELETE from mytable
where c1 = 'val'
and c2 = 'val2'
但是,相同的查询在 Oracle DB 控制台中运行得非常好。当我运行 DELETE from mytable where c3 = 'val' 时,它在我的应用程序中运行良好。
可能是什么原因?
【问题讨论】:
-
c1和c2的数据类型是什么?在这两种情况下,您是否获得不同的查询计划?您在这两种情况下都使用字符串文字吗?还是您在一种情况下使用绑定变量?