Java连接MySQL问题,求大神帮忙

starktan 2015-08-19 09:19:25
新人,在家自学java,学到JDBC数据库编程,遇到问题无法处理,求大神帮忙。问题如下
代码1如下:(在MySQL数据库中创建一个名称为db_user的数据库。使用纯java驱动方式连接数据库:)
package com.mxl.jdbc;
import java.sql.Connection;
import java.sql.DriverManager;
public class ConnectionDB{
public static void main(String[] args){
Connection conn =null;
try{
Class.forName("com.mysql.jdbc.Driver");
String url="jdbc:mysql://localhost:3306/db_user";
conn =DriverManager.getConnection(url,"root","root");
System.out.println("连接数据库成功!");
}catch(Exception e){
System.out.println("数据连接失败!");
}finally{
try{
conn.close();
}catch(Exception e){
e.printStackTrace();
}
}
}
}
问题1:运行显示:数据连接失败!
java.lang.NullPointerException
at com.mxl.jdbc.ConnectionDB.main(ConnectionDB.java:16)
代码2:
package com.mxl.jdbc;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;
public class StatementDemo{
public static void main(String[] agrs){
Connection connection=null;
Statement statement=null;
try{
String insertSql="insert into tab_user value(1,'admin','admin','王丽丽','女',25)";
String updateSql="update tab_user set realname='王丽'where id=1";
Class.forName("com.mysql.jdbc.Driver");
connection=DriverManager.getConnection(""+"jdbc:mysql://localhost/db_user?useUnicode=ture&&characterEncoding=GBK","root","root");
statement=connection.createStatement();
int num=statement.executeUpdate(insertSql);
if(num>0){
int updateNum=statement.executeUpdate(updateSql);
if(updateNum>0){
System.out.println("向tab_user表添加并修改一条数据!");
}else{
System.out.println("修改失败");
}
}else{
System.out.println("添加失败");
}
}catch(ClassNotFoundException e1){
System.out.println("无法找到驱动类");
}catch(SQLException e2){
System.out.println("执行SQL语句出错");
e2.printStackTrace();
}catch(Exception e3){
System.out.println(e3.getMessage());
}finally{
try{
if(connection!=null&&(!connection.isClosed())){
connection.close();
}
if(statement!=null){
statement.close();
statement=null;
}
}catch(SQLException e){
e.printStackTrace();
}
}
}
}
运行结果:执行SQL语句出错
java.sql.SQLException: The connection property 'useUnicode' only accepts values of the form: 'true', 'false!'!, 'yes!'! or 'no'. The value 'ture' is not in this set





昨天才装的MySQL,JDBC驱动程序在D:\Program Files\Java\jdk1.8.0_31\jre\lib和D:\Program Files\Java\jdk1.8.0_31\lib都存放有,在Myeclipse上加载了jar驱动包。
求大神告知是否是配置出了问题,还是程序问题?怎么修改?
...全文
507 24 打赏 收藏 转发到动态 举报
写回复
用AI写文章
24 条回复
切换为时间正序
请发表友善的回复…
发表回复
铁锤_ 2015-08-20
  • 打赏
  • 举报
回复
true写错了
Cx_轩 2015-08-19
  • 打赏
  • 举报
回复
jdbc:mysql://localhost:3306/db_user?useUnicode=ture&&characterEncoding=GBK","root","root");我这样加3306是否正确?加上后结果一样 里面的值 加上单引号!eg: ‘true’
ITjavaman 2015-08-19
  • 打赏
  • 举报
回复
- -,无奈,那你这么干,先用空密码登录 mysql -uroot -p 然后set password=password('root'); 接着exit退出,然后再重新登录 mysql -uroot -proot
starktan 2015-08-19
  • 打赏
  • 举报
回复
引用 18 楼 ITjavaman 的回复:
[quote=引用 17 楼 tshaaw 的回复:]
[quote=引用 16 楼 ITjavaman 的回复:]
你有没有修改过你的MySQL的密码,默认密码为空,没有改的话使用命令 mysqladmin -u root password "root"
然后再用 mysql -uroot -proot 登录试试,我猜应该就是这个原因了,成功了再测试应该就没问题了

安装设置MySQL的时候设置了的,怎么办?[/quote]
安装的时候设置的那个是超级用户,没关系的,你直接命令行 mysqladmin -u root password "root"[/quote]

引用 18 楼 ITjavaman 的回复:
[quote=引用 17 楼 tshaaw 的回复:]
[quote=引用 16 楼 ITjavaman 的回复:]
你有没有修改过你的MySQL的密码,默认密码为空,没有改的话使用命令 mysqladmin -u root password "root"
然后再用 mysql -uroot -proot 登录试试,我猜应该就是这个原因了,成功了再测试应该就没问题了

安装设置MySQL的时候设置了的,怎么办?[/quote]
安装的时候设置的那个是超级用户,没关系的,你直接命令行 mysqladmin -u root password "root"[/quote]
不行啊,什么地方错了吗?
ITjavaman 2015-08-19
  • 打赏
  • 举报
回复
引用 17 楼 tshaaw 的回复:
[quote=引用 16 楼 ITjavaman 的回复:] 你有没有修改过你的MySQL的密码,默认密码为空,没有改的话使用命令 mysqladmin -u root password "root" 然后再用 mysql -uroot -proot 登录试试,我猜应该就是这个原因了,成功了再测试应该就没问题了
安装设置MySQL的时候设置了的,怎么办?[/quote] 安装的时候设置的那个是超级用户,没关系的,你直接命令行 mysqladmin -u root password "root"
starktan 2015-08-19
  • 打赏
  • 举报
回复
引用 16 楼 ITjavaman 的回复:
你有没有修改过你的MySQL的密码,默认密码为空,没有改的话使用命令 mysqladmin -u root password "root" 然后再用 mysql -uroot -proot 登录试试,我猜应该就是这个原因了,成功了再测试应该就没问题了
安装设置MySQL的时候设置了的,怎么办?
ITjavaman 2015-08-19
  • 打赏
  • 举报
回复
你有没有修改过你的MySQL的密码,默认密码为空,没有改的话使用命令 mysqladmin -u root password "root" 然后再用 mysql -uroot -proot 登录试试,我猜应该就是这个原因了,成功了再测试应该就没问题了
starktan 2015-08-19
  • 打赏
  • 举报
回复
引用 13 楼 ITjavaman 的回复:
那就很明显了- -,你的用户密码错误
我在bin下面输入mysql -u root -p 就可以进去了
starktan 2015-08-19
  • 打赏
  • 举报
回复
在bin下面输入mysql -u root -p就可以了
ITjavaman 2015-08-19
  • 打赏
  • 举报
回复
那就很明显了- -,你的用户密码错误
starktan 2015-08-19
  • 打赏
  • 举报
回复
引用 11 楼 ITjavaman 的回复:
[quote=引用 10 楼 tshaaw 的回复:]
[quote=引用 8 楼 ITjavaman 的回复:]
[quote=引用 6 楼 tshaaw 的回复:]
[quote=引用 5 楼 ITjavaman 的回复:]
[quote=引用 3 楼 tshaaw 的回复:]
其实程序出错的几率小,毕竟是看书上写的。第一个程序主要就是数据库连接不成功,所以昨天下午开始我就一直在按照网上找的方法安装/卸载MySQL数据库,加载JDBC驱动。到现在也连接不上。

你在DOC命令下 能登录MySQL?试试DOC窗口下试试 mysql -uroot -proot[/quote]
我对doc操作不熟练,不知道正不正确,截图给你看看。[/quote]
- -没设置环境变量,你跑到你MYSQL里面的bin目录下执行这个命令[/quote]
是这样吗?[/quote]
命令 mysql -uroot -proot 中-前面是有一个空格的[/quote]
见笑了,现在这样也不对吧,而且我刚才检查了Path,设置了环境变量的
ITjavaman 2015-08-19
  • 打赏
  • 举报
回复
引用 10 楼 tshaaw 的回复:
[quote=引用 8 楼 ITjavaman 的回复:] [quote=引用 6 楼 tshaaw 的回复:] [quote=引用 5 楼 ITjavaman 的回复:] [quote=引用 3 楼 tshaaw 的回复:] 其实程序出错的几率小,毕竟是看书上写的。第一个程序主要就是数据库连接不成功,所以昨天下午开始我就一直在按照网上找的方法安装/卸载MySQL数据库,加载JDBC驱动。到现在也连接不上。
你在DOC命令下 能登录MySQL?试试DOC窗口下试试 mysql -uroot -proot[/quote] 我对doc操作不熟练,不知道正不正确,截图给你看看。[/quote] - -没设置环境变量,你跑到你MYSQL里面的bin目录下执行这个命令[/quote] 是这样吗?[/quote] 命令 mysql -uroot -proot 中-前面是有一个空格的
starktan 2015-08-19
  • 打赏
  • 举报
回复
引用 8 楼 ITjavaman 的回复:
[quote=引用 6 楼 tshaaw 的回复:]
[quote=引用 5 楼 ITjavaman 的回复:]
[quote=引用 3 楼 tshaaw 的回复:]
其实程序出错的几率小,毕竟是看书上写的。第一个程序主要就是数据库连接不成功,所以昨天下午开始我就一直在按照网上找的方法安装/卸载MySQL数据库,加载JDBC驱动。到现在也连接不上。

你在DOC命令下 能登录MySQL?试试DOC窗口下试试 mysql -uroot -proot[/quote]
我对doc操作不熟练,不知道正不正确,截图给你看看。[/quote]
- -没设置环境变量,你跑到你MYSQL里面的bin目录下执行这个命令[/quote]
是这样吗?
ITjavaman 2015-08-19
  • 打赏
  • 举报
回复
引用 8 楼 ITjavaman 的回复:
[quote=引用 6 楼 tshaaw 的回复:] [quote=引用 5 楼 ITjavaman 的回复:] [quote=引用 3 楼 tshaaw 的回复:] 其实程序出错的几率小,毕竟是看书上写的。第一个程序主要就是数据库连接不成功,所以昨天下午开始我就一直在按照网上找的方法安装/卸载MySQL数据库,加载JDBC驱动。到现在也连接不上。
你在DOC命令下 能登录MySQL?试试DOC窗口下试试 mysql -uroot -proot[/quote] 我对doc操作不熟练,不知道正不正确,截图给你看看。[/quote] - -没设置环境变量,你跑到你MYSQL里面的bin目录下执行这个命令[/quote] 另外 mysql -uroot -proot 中是有空格的,-前面一个空格
ITjavaman 2015-08-19
  • 打赏
  • 举报
回复
引用 6 楼 tshaaw 的回复:
[quote=引用 5 楼 ITjavaman 的回复:] [quote=引用 3 楼 tshaaw 的回复:] 其实程序出错的几率小,毕竟是看书上写的。第一个程序主要就是数据库连接不成功,所以昨天下午开始我就一直在按照网上找的方法安装/卸载MySQL数据库,加载JDBC驱动。到现在也连接不上。
你在DOC命令下 能登录MySQL?试试DOC窗口下试试 mysql -uroot -proot[/quote] 我对doc操作不熟练,不知道正不正确,截图给你看看。[/quote] - -没设置环境变量,你跑到你MYSQL里面的bin目录下执行这个命令
starktan 2015-08-19
  • 打赏
  • 举报
回复
引用 6 楼 tshaaw 的回复:
[quote=引用 5 楼 ITjavaman 的回复:] [quote=引用 3 楼 tshaaw 的回复:] 其实程序出错的几率小,毕竟是看书上写的。第一个程序主要就是数据库连接不成功,所以昨天下午开始我就一直在按照网上找的方法安装/卸载MySQL数据库,加载JDBC驱动。到现在也连接不上。
你在DOC命令下 能登录MySQL?试试DOC窗口下试试 mysql -uroot -proot[/quote] 我对doc操作不熟练,不知道正不正确,截图给你看看。[/quote] 一个是命令提示符进入,一个是菜单MySQL进入
starktan 2015-08-19
  • 打赏
  • 举报
回复
引用 5 楼 ITjavaman 的回复:
[quote=引用 3 楼 tshaaw 的回复:]
其实程序出错的几率小,毕竟是看书上写的。第一个程序主要就是数据库连接不成功,所以昨天下午开始我就一直在按照网上找的方法安装/卸载MySQL数据库,加载JDBC驱动。到现在也连接不上。

你在DOC命令下 能登录MySQL?试试DOC窗口下试试 mysql -uroot -proot[/quote]
我对doc操作不熟练,不知道正不正确,截图给你看看。
ITjavaman 2015-08-19
  • 打赏
  • 举报
回复
引用 3 楼 tshaaw 的回复:
其实程序出错的几率小,毕竟是看书上写的。第一个程序主要就是数据库连接不成功,所以昨天下午开始我就一直在按照网上找的方法安装/卸载MySQL数据库,加载JDBC驱动。到现在也连接不上。
你在DOC命令下 能登录MySQL?试试DOC窗口下试试 mysql -uroot -proot
starktan 2015-08-19
  • 打赏
  • 举报
回复
jdbc:mysql://localhost:3306/db_user?useUnicode=ture&&characterEncoding=GBK","root","root");我这样加3306是否正确?加上后结果一样
starktan 2015-08-19
  • 打赏
  • 举报
回复
其实程序出错的几率小,毕竟是看书上写的。第一个程序主要就是数据库连接不成功,所以昨天下午开始我就一直在按照网上找的方法安装/卸载MySQL数据库,加载JDBC驱动。到现在也连接不上。
加载更多回复(4)

58,454

社区成员

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

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