2 x13764390223 x13764390223 于 2016.03.15 10:38 提问

sql delete from删除数据问题

我用delete from语句删除表内数据后在另一个地方还能看到删除前的数据,这是个什么原因,哪位大神能解答一下嘛

顺便说下如何解决最好~

6个回答

qq423399099
qq423399099   Ds   Rxr 2016.03.15 10:56
已采纳

是不是因为没有commit?

qq423399099
qq423399099 回复小灸舞: insert,delete,update属于DML(数据操作语言)命令,当执行DML命令如果没有提交,将不会被其他会话看到。 除非在DML命令之后执行了DDL(数据定义语言,create,drop,alter这些)命令或DCL(数据控制语言,有grant,deny,revoke这些)命令, 或用户退出会话或终止实例,此时系统会自动发出commit命令,使未提交的DML命令提交
接近 2 年之前 回复
qq_21792169
qq_21792169   2016.03.15 10:43

删除不彻底,加上内联删除选项,

x13764390223
x13764390223 可是我内部一些绑定字段都有用无法删除啊
接近 2 年之前 回复
sinat_21689399
sinat_21689399   2016.03.15 10:47

在哪个地方看到也不说清楚了

x13764390223
x13764390223 我们公司自己编的平台- -我删除后查询了一下,表里也没数据的,可在别的地方还是看得到
接近 2 年之前 回复
qq_25093755
qq_25093755   2016.03.15 10:54

数据在存储的时候管理了其他的表信息。
删除的时候还需要把相关联的表信息Update或者Delete掉,不然会产生没有用的数据。

f445239051
f445239051   2016.03.15 11:05

你说的具体点,是在另外一个控制台还能查到数据,还是说你在你的应用里面还能查到数据,应用里面还能查到就有可能是缓存的问题了

dandanwang
dandanwang   2016.03.16 15:48

删除数据后一般要考虑是否commit数据,这样才能真正的删除,如果是sqlserver这个是数据库自动提交的,而对于oracle数据库这里需要显性调用一下。同时其他客户端需要重新查询一下才能得到当前的数据状态,因为客户端一般是采的用拉模式进行的,需要从数据库查询后才行,这也是并发问题的一种是脏数据。

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!