▲▲▲百分求救:关于JAVA与MYSQL,来者有分,绝不失言▲▲▲

dcren521 2006-06-09 07:14:30
MYSQL中有一个库mydb,其下有一张表usercode
mysql> desc usercode;
+--------------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+--------------+-------------+------+-----+---------+-------+
| USERID | varchar(8) | NO | PRI | | |
| USERNAME | varchar(20) | YES | | NULL | |
+--------------+-------------+------+-----+---------+-------+

在JAVA中执行如下语句
……
String sql="select userid ,username,now() as time from usercode where userid='wb' ";

ResultSet rs = statement.executeQuery(sql);

//获得数据结果集合

ResultSetMetaData rmeta = rs.getMetaData();

//确定数据集的列数,亦字段数

int numColumns=rmeta.getColumnCount();
System.out.println(numColumns);
for(int i=1;i<=numColumns;i++)
{
System.out.print(rmeta.getColumnName(i));
System.out.print("|");
}


System.out.print("\n");

while(rs.next()) {

for(int j=1;j<=numColumns;j++)
{
System.out.print(rs.getString(j)+" ");
System.out.print("|");
}
}
……

结果如下:
USERID|USERNAME||
wb |卫斌 |2006-06-09 16:27:16.0 |
数据库操作成功,恭喜你Press any key to continue...

大家看看表头
USERID|USERNAME||
我希望得到的表头是
USERID|USERNAME|TIME|
为什么会是这样子的,请大家查一下原因。

附录:以下为本实验的全部源代码,供大家帮我解决问题时使用
------DBBean.java-----------------
import java.sql.*;
import java.lang.*;
public class DBBean
{
public static void main(String args[ ])
{
try
{

//驱动程序名

String driverName="com.mysql.jdbc.Driver";
//数据库用户名
String userName="root";
//密码
String userPasswd="123";
//数据库名
String dbName="mydb";
//表名
String tableName="usercode";
//联结字符串

String url="jdbc:mysql://localhost/"+dbName+"?user="+userName+"&password="+userPasswd+"&useUnicode=true&characterEncoding=gb2312";
System.out.println(url);

Class.forName("com.mysql.jdbc.Driver").newInstance();

Connection connection=DriverManager.getConnection(url);

java.sql.Statement statement = connection.createStatement();

String sql="select userid ,username,now() as time from usercode where userid='wb' ";

ResultSet rs = statement.executeQuery(sql);

//获得数据结果集合

ResultSetMetaData rmeta = rs.getMetaData();

//确定数据集的列数,亦字段数

int numColumns=rmeta.getColumnCount();
System.out.println(numColumns);
for(int i=1;i<=numColumns;i++)
{
System.out.print(rmeta.getColumnName(i));
System.out.print("|");
}


System.out.print("\n");

while(rs.next()) {

for(int j=1;j<=numColumns;j++)
{
System.out.print(rs.getString(j)+" ");
System.out.print("|");
}


}

System.out.print("\n");

System.out.print("数据库操作成功,恭喜你");

rs.close();

statement.close();

connection.close();
}
catch(Exception e)
{
System.out.println(e.toString());
}
}
}
...全文
232 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
天哥-天行健 2006-06-12
  • 打赏
  • 举报
回复
......
for(int i=1;i<=numColumns;i++)
{
System.out.print(rmeta.getColumnLabel(i));
System.out.print("|");
}
......
dcren521 2006-06-12
  • 打赏
  • 举报
回复
to Davis129(混浊の水):
没错,这就是我遇到的并且想要解决的问题呀!真是奇怪,但如果在后台运行,显示的列名time
如下图所示:
mysql> select userid ,username,now() as time from usercode where userid='wb' ;
+--------+----------+---------------------+
| userid | username | time |
+--------+----------+---------------------+
| wb | 卫斌 | 2006-06-12 11:18:11 |
+--------+----------+---------------------+
1 row in set (0.00 sec)
Davis129 2006-06-12
  • 打赏
  • 举报
回复
String sql="select userid ,username,now() as time from usercode where userid='wb' ";
...
System.out.print(rmeta.getColumnName(3)); //取不到"time",取出来的为null,为什么呢?
...
sbsrg3000 2006-06-12
  • 打赏
  • 举报
回复
HEJIAQING989898() ( ) 信誉:100 2006-6-11 17:11:43 得分: 0

假的吧
dcren521 2006-06-12
  • 打赏
  • 举报
回复
HEJIAQING989898() 那您的QQ是多少呀?
huabingl 2006-06-12
  • 打赏
  • 举报
回复

select now() as time from dual
测试通不过。
HEJIAQING989898 2006-06-11
  • 打赏
  • 举报
回复
加我QQ我给你说
benewu 2006-06-11
  • 打赏
  • 举报
回复
你的数据库有TIME表吗
ruky9988 2006-06-09
  • 打赏
  • 举报
回复
上去!!!
影子传说_Hades 2006-06-09
  • 打赏
  • 举报
回复
帮顶
trumplet 2006-06-09
  • 打赏
  • 举报
回复
可以跟踪一下,看看是哪里的问题
trumplet 2006-06-09
  • 打赏
  • 举报
回复
可以跟踪一下,看看是哪里的问题
zhkchi 2006-06-09
  • 打赏
  • 举报
回复
程序上看不出了,你debug试试

67,513

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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