java中sql删除首条记录语句...

来源:百度知道 编辑:UC知道 时间:2024/05/22 04:42:55
private void DelData(){
try{
conn = DriverManager.getConnection(sConnStr,"sa","sd123321");
PreparedStatement pstmt=conn.prepareStatement("delete from Tc_SmsMt " +
"where (select top 1* from Tc_SmsMt)");
pstmt.executeUpdate();
pstmt.close();
conn.close();

}
catch (Exception e) {
e.printStackTrace();
}
}
这个函数运行后会把表Tc_SmsMt所有数据都删除
不解啊 如果要只删除首条记录
应该如何写?
望各位达人指点...
回1楼朋友:rownum无效
回2楼朋友:数据库是sql2000
回3楼朋友:语法错误,你这个语句我试过了.

delete from Tc_SmsMt " +
"where id in (select top 1 id from Tc_SmsMt)

delete from Tc_SmsMt where rownum=1你试试

什么数据库阿?

"delete from Tc_SmsMt where id in (select top 1 id from Tc_SmsMt)"

id为你表中相应主键

你where 后面的条件并不是判断的

delete from Tc_SmsMt a
where a.主键列 = (
select 主键列 from (select top 1 * from Tc_SmsMt )
)

我在oracle中不能用top所以没有环境,
你试下。