论坛首页 Java企业应用论坛

如何删除表中的最后一条记录呢?请高人指点

浏览 8553 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2004-02-06  
我在SQL中有这样条语句:“delete top 1 from Log order by theId DESC”,但是我不清楚如何使用Hibernate实现该删除操作,请问有人能够给予指点吗?
   发表时间:2004-02-09  
没有人知道吗?还望有高手指点阿,我现在着急得很。大家给各意见先!
0 请登录后投票
   发表时间:2004-02-09  
hibernate直接支持SQL语句操作。

这种非面向对象的SQL操作,硬要用面向对象的方式来操作得不偿失。首先要判断一下这样做的意义何在,为什么会有这种需求。然后再看是否每行的内容已经在session中load过了,如果已经存在在内存里面了,delete一下就可以了。
0 请登录后投票
   发表时间:2004-02-09  
这种需求是毋庸置疑的,但是目前我们使用的数据库有SQL Server,MySQL,Sybase,所以说跨数据库是很有必要的,但是我Sybase是否支持这样的语句我尝试的结果是否,所以才试图寻求Hibernate的解决方法,否则在移植数据库的时候就会出现错误。
0 请登录后投票
   发表时间:2004-02-09  
bave 写道
这种需求是毋庸置疑的

能谈一下你们的具体应用么?也许不一定要用你写的sql才能执行。
0 请登录后投票
   发表时间:2004-02-09  
不要说删最后一下条啦,就算是删最后十条都有办法。
首先用select语句,再用Iterator浏览,再删掉不就行了罗,反正Iterator又不是一次性将所有的记录返回来的,不就是要一条得一条嘛。性能可能会慢慢一点点,不过,一条十条应该不算是什么吧(未测过十条以上的)
0 请登录后投票
   发表时间:2004-02-09  
xiaoyu 写道
不要说删最后一下条啦,就算是删最后十条都有办法

办法有很多种,我们需要讨论一个最好的。:)

我只是对于bave项目需求有点疑惑,因为在以往的经验中,还没有遇到过需要直接从数据库查询最新记录,并进行删除,这样怪怪的用户需求。
0 请登录后投票
   发表时间:2004-02-09  
其实就算是用SQL语句 id desc 也未必删得到最新的呀,如果ID是手工写的,如果ID是随机的字符串,哈哈。
其实在项目中我批量删除都是直接用的的SQL的,
上面的问题会不会也是HB没法解决的那5%问题呢??
0 请登录后投票
   发表时间:2004-02-11  
Quake Wang 写道
xiaoyu 写道
不要说删最后一下条啦,就算是删最后十条都有办法


我只是对于bave项目需求有点疑惑,因为在以往的经验中,还没有遇到过需要直接从数据库查询最新记录,并进行删除,这样怪怪的用户需求。

Id是自动递增的字段,所以我删除的是最早的一条记录,这是在达到日志容量门限后需要进行的操作,所以我希望大家能够畅所欲言,给出解决的办法,谢谢了!
0 请登录后投票
   发表时间:2004-02-11  
bave 写道

Id是自动递增的字段,所以我删除的是最早的一条记录


反了吧?
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics