JAVA能连接MYSQL数据库,但是无法读出数据

packagecom.xxdhb.dao;importjava.sql.Connection;importjava.sql.DriverManager;importjav... package com.xxdhb.dao;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;

import javax.sql.rowset.CachedRowSet;

import com.sun.rowset.CachedRowSetImpl;

public class DBConn {

private String url; // 存储SQLSever连接路径

private String serverName; // 存储机器的名称

private String portNumber; // 存储端口名称

private String databaseName; // 存储数据库名称

private String userName; // 存储用户名称

private String password; // 存储密码

/* 设置连接数据库相关参数 */

public DBConn(){

url = "jdbc:mysql://127.0.0.1:3306/Mysql";

serverName = "localhost";

portNumber = "3306";

databaseName = "magazine";

userName = "root";

password = "sa123";

}

/* 获取连接数据库路径并返回 */

private String getConnectionUrl() {

return url + serverName + ":" + portNumber + ";databaseName=" + databaseName + ";";

}

/* 获取Conncetion对象并返回 */

public Connection getConnection() {

Connection con=null;

try {
Class.forName("com.mysql.jdbc.Driver"); // 加载Jdbc驱动程序

con = DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/Mysql",userName,password);

} catch (Exception e) {

e.printStackTrace();

System.out.println("getConnection()内部跟踪错误:"+ e.getMessage());
}

return con;

}
public static void main(String[] args) {
DBConn d=new DBConn();
Connection conn=d.getConnection();
PreparedStatement ps = null;
ResultSet rs = null;
String sql = "select * from nmm_msg";
try {
ps = conn.prepareStatement(sql);
System.out.println("~~~~~~~1111"+conn);//能输出
rs = ps.executeQuery(); //到这一步无法继续执行
System.out.println("~~~~~~~22222222"+conn);//无法输出
System.out.println(rs.next());
while(rs.next()){
System.out.println("~~~~~~~~");
}
} catch (Exception e) {
// TODO: handle exception
}

}
}

到rs = ps.executeQuery();这一步无法继续执行获取数据,数据库中有数据,请哪个高手指点下,谢谢~~~~~急!!!!急!!!!!急!!!
1.已经确认能连接数据库,添加了编码characterEncoding=gbk都无法解决
2.com.mysql.jdbc.exceptions.MySQLSyntaxErrorException: Table 'mysql.nmm_msg' doesn't exist
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1026)
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:956)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3515)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3447)
at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1951)
at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2101)
at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2554)
at com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:1761)
at com.mysql.jdbc.PreparedStatement.executeQuery(PreparedStatement.java:1912)
at t.DBConn.main(DBConn.java:82)
对了我用的驱动是mysql-connector-java-5.1.7-bin,不知道有没有影响
3.我的Mysql数据库是5.0版本的
展开
 我来答
多情总是无情Cb
2010-04-12
知道答主
回答量:18
采纳率:0%
帮助的人:16.1万
展开全部
可能是编码问题,在连接串后面加上characterEncoding=gbk,比如:url = "jdbc:mysql://127.0.0.1:3306/Mysql?characterEncoding=gbk";
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
大时代暑
2010-04-12 · TA获得超过2.5万个赞
知道大有可为答主
回答量:4111
采纳率:0%
帮助的人:4828万
展开全部
是数据库连接出了问题,你的数据库应该根本没有和你的项目连接上

你用的是MyEclipse么,如果是,比如是否添加了数据库驱动等
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
sea5991
2010-04-12 · TA获得超过344个赞
知道小有建树答主
回答量:280
采纳率:100%
帮助的人:157万
展开全部
1、检查你的工程字符集;
2、检查你的MySQL驱动和数据库版本;

我用你的代码和最新的驱动连4.1的MySQL是没有问题的....
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友ea3281b
2010-04-12
知道答主
回答量:20
采纳率:0%
帮助的人:0
展开全部
我终于知道什么问题了,我刚开始也这样,后来知道在加载Jdbc驱动程序出问题,所以引入了mysql-connector-java-3.1.13-bin.jar
这样就没问题了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
攀越锦添花4091
2010-04-12 · TA获得超过247个赞
知道答主
回答量:35
采纳率:0%
帮助的人:10.8万
展开全部
驱动add to buile path了没有????
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式