当前位置: 技术问答>java相关
有几个很简单的数据库查询问题,
来源: 互联网 发布时间:2015-11-05
本文导语: 以下问题全部关于SQLSERVER+JDBC(记住,是SQLSERVER哦,主要是我没用过) 一,数据库里有多条记录,每条记录都有ID , 现在我想倒着查出来,也就是从大到小的顺序查,比如resultset.next()第一次执行返回的是ID为最大的,...
以下问题全部关于SQLSERVER+JDBC(记住,是SQLSERVER哦,主要是我没用过)
一,数据库里有多条记录,每条记录都有ID , 现在我想倒着查出来,也就是从大到小的顺序查,比如resultset.next()第一次执行返回的是ID为最大的,
这个SQL语句怎么写????好象是有一个什么数据库函数吧?????
二,我有一个操作要对记录进行整理,因为在论坛管理中会删除记录,那么ID号就会有缺项,比如ID最大都有100 了,可是实际只有10个,1,4,9,22,33……我想经过整理把他们整理为1,2,3……有多少记录ID号最大就为那么多。
那么这个操作要求可以锁住整张表,连查询都不允许,我记得ORACLE可以用(FORUPDATE)来完成,不知道SQLSERVER 的SQL 语句怎么写????
三,我想查出SQLSERVER的系统时间,然后改为某个格式,最后以字符串的形式打印出来,
请把以上整个过程举个例子,谢谢。
这么麻烦我都觉得不好意思,麻烦大家写得详细些,最好有例子,我会每条给30
分,24小时内给分!谢谢大家了!!
一,数据库里有多条记录,每条记录都有ID , 现在我想倒着查出来,也就是从大到小的顺序查,比如resultset.next()第一次执行返回的是ID为最大的,
这个SQL语句怎么写????好象是有一个什么数据库函数吧?????
二,我有一个操作要对记录进行整理,因为在论坛管理中会删除记录,那么ID号就会有缺项,比如ID最大都有100 了,可是实际只有10个,1,4,9,22,33……我想经过整理把他们整理为1,2,3……有多少记录ID号最大就为那么多。
那么这个操作要求可以锁住整张表,连查询都不允许,我记得ORACLE可以用(FORUPDATE)来完成,不知道SQLSERVER 的SQL 语句怎么写????
三,我想查出SQLSERVER的系统时间,然后改为某个格式,最后以字符串的形式打印出来,
请把以上整个过程举个例子,谢谢。
这么麻烦我都觉得不好意思,麻烦大家写得详细些,最好有例子,我会每条给30
分,24小时内给分!谢谢大家了!!
|
1. select * from yourtable order by id desc
desc:降序 asc:升序 默认是asc
2. 如果是这样你就不必用递增字段,而是每次插入新数据之前,统计一下目前有多少数据,具体的说是:将id设为整型,插入数据时用下面的语句:
ResultSet rs=stmt.executeQuery("select count(*) as count from yourtable");
stmt.executeUpdate("insert into yourtable(id) values("+rs.getInt("count")+")");
3. 忘了系统函数了:-(
desc:降序 asc:升序 默认是asc
2. 如果是这样你就不必用递增字段,而是每次插入新数据之前,统计一下目前有多少数据,具体的说是:将id设为整型,插入数据时用下面的语句:
ResultSet rs=stmt.executeQuery("select count(*) as count from yourtable");
stmt.executeUpdate("insert into yourtable(id) values("+rs.getInt("count")+")");
3. 忘了系统函数了:-(
|
如果数据类型是日期型
java.util.Date d=new java.util.Date();
就可以了
如果是字符型
java.util.Date d=new java.util.Date();
java.text.SimpleDateFormat dformat=new java.text.SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String dateandtime=dformat.format(d);
java.util.Date d=new java.util.Date();
就可以了
如果是字符型
java.util.Date d=new java.util.Date();
java.text.SimpleDateFormat dformat=new java.text.SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String dateandtime=dformat.format(d);
|
1 SELECT * FROM TABLENAME ORDERBY ID DESC//注意大写
2 你可以不用SQL的专用插入语句insert into你可以自己写个插入语句 select * from table where id=null 然后rs.next() 再插入
这个方法是我从www.lunji.com的留言本上学来的:)很不错
3SQL 时间函数你可以在SQLServer的企业管理器里,打开一个数据库,然后点左边的列表,里头有系统的所有时间函数,你可以自己选。选好了后,如果要输出,你可以用jsp函数攫取嘛!不过我想你为什么不用jsp自己的时间函数呢?:)
2 你可以不用SQL的专用插入语句insert into你可以自己写个插入语句 select * from table where id=null 然后rs.next() 再插入
这个方法是我从www.lunji.com的留言本上学来的:)很不错
3SQL 时间函数你可以在SQLServer的企业管理器里,打开一个数据库,然后点左边的列表,里头有系统的所有时间函数,你可以自己选。选好了后,如果要输出,你可以用jsp函数攫取嘛!不过我想你为什么不用jsp自己的时间函数呢?:)