用getDate()取sqlserver2000中的datetime字段为什么多出000?

鲁班大叔 2002-05-27 04:37:18
rt
...全文
121 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
fzw123 2002-05-28
  • 打赏
  • 举报
回复
String dateandtime=sqlRst.getString("dateandtime");
改成
Date dateandtime = sqlRst.getTimeStamp("dateandtime");
String tmpstr=new SimpleDateTimeFormat("yyyy-MM-dd hh:mm:ss").format(dateandtime);
鲁班大叔 2002-05-28
  • 打赏
  • 举报
回复
我用的是String dateandtime=sqlRst.getString("dateandtime");
dateandtime字段也是datetime类型的,数据库中的值是2002-5-27 22:42:07
可是一读出来就是2002-05-27 22:41:12.000。
我用了两位说的方法,但是我把String 改成Date就会出错,真是太奇怪了。
bistone 2002-05-27
  • 打赏
  • 举报
回复
<%@ page
language="java"
import="java.sql.*"
contentType="text/html; charset=GB2312" %>

<html>
<head>
</head>
<body>
<%

String sDBDriver="sun.jdbc.odbc.JdbcOdbcDriver";
//数据库连接字符串:jdbc-odbc桥
String sConnStr="jdbc:odbc:myDS";
Connection conn=null;
ResultSet rs=null;

//打开数据库连接
try
{
Class.forName(sDBDriver);
}
catch (java.lang.ClassNotFoundException e)
{
out.println("opendb():"+e.getMessage());
}

//定义执行sql语句的函数
try
{
conn=DriverManager.getConnection(sConnStr);
Statement stmt=conn.createStatement();
rs=stmt.executeQuery("select * from user333 where id='2' ");
rs.next();
String id=rs.getString("id");
Date current_time=rs.getDate("present");
out.println(id+"\t"+current_time);

}
catch (SQLException ex)
{
out.println("aq.executeQuery:"+
ex.getMessage()+"\n"+ex.getSQLState()+
"\n"+ex.toString());
}

rs.close();
conn.close();
%>
</body>
<html>

用我的代码试试,其中表USER333的字段PRESENT是DATETIME型的,
我试的结果为
2 2002-02-14
wjfling 2002-05-27
  • 打赏
  • 举报
回复
用这种方法试试
Date d=res.getDate("DATABASE_DATA");
String sDate=new SimpleDateFormat(d).format("yyyy-MM-dd");

81,090

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧