你取字段的时候,必须按照读取的顺序来
你试试看把sql="select id, title, times,content from news order by id desc";
你试试看把sql="select id, title, times,content from news order by id desc";
解决方案 »
- 怎样部署org.apache.commons.httpclient在Eclipse下
- 乱码的问题,要疯了
- cuteftp怎么上传不了,出现的错误提示details如下 :
- 以下是纯JDBC连接数据库的代码,但连接不到数据库,抛出异常java.sql.SQLException: No suitable driver
- 想做个论坛
- java.lang.NullPointerException
- 一个简单的登陆设计问题
- Linux环境下的MySql如何设置编码格式
- 我从数据库中选择的数据怎样显示在页面上,请高手指点,最好给点程序
- 大家来看看,为什么他不按我的要求显示简体中文?
- [在线等待]谁能帮我?
- 往数据库克中插入数据的问题
问题就出在这句,虽然逻辑上是正确的,但搂主为了图省事,翻了一个简单的,但很多人都容易犯得错误,对象的定义不能放在循环里啊。
这样一改就ok了。
<%
String sql = "select * from news ORDER BY id DESC";
ResultSet rs = db.executeQuery(sql);
String Id, Title, date1, Content;
java.util.Date date= new java.util.Date();while(rs.next())
{
Id = rs.getString("id").trim();
Title = rs.getString("title").trim();
date = rs.getDate("times");
date1 = date.toString();
Content = rs.getString("content").trim();
}
%>
比如向楼上所说的一样,数据类型要对应该类型的数据。
String sql = "select * from news ORDER BY id DESC";
改成
String sql = "select id,title,times,content from news ORDER BY id DESC";
问题就出在这句,虽然逻辑上是正确的,但搂主为了图省事,翻了一个简单的,但很多人都容易犯得错误,对象的定义不能放在循环里啊。
这样一改就ok了。reply:
我在j2sdk1。4下运行的
public static void testLoop2() {
for(int i = 0; i < 5; i++) {
String x = new String("hello" + i);
java.util.Date date = new java.util.Date();
System.out.println(x);
System.out.println(date.toString());
}
}没有出错。
java.sql.Date TypeNOT java.util.Date!!!that's all
比如数据库 varchar id
varchar name
varchar address取的时候一定要按下面顺序来取:
rs.getString("id")
rs.getString("name")
rs.getString("address")你可以先取出,付值给变量,eg:String s1=rs.getString("id");
String s2=rs.getString("name");
String s3=rs.getString("address");
然后你就可以随意顺序使用s1,s2,s3了!
java.sql.Date extends java.util.Date,所以不是你这个问题。至于重复定义,也不可能出现,因为作用域的问题。
fieldName"),而不是rs.getString(int)。这样只要你dbfieldName对应正确的db域的话,与顺序无关
java.sql.Date extends java.util.Date谢谢,一时忘了这一点。
那会不会是数据库字段类型的问题?