按照疯狂java讲义的13.3的程序,发现程序运行出错。
1.点开runConnMySql.cmd运行文件,出现如下结果:
2.用Editplus进行编译运行,如下结果:
报错定位到程序第18行,而第18行是驱动
原因:运行该程序需要MySQL的数据库驱动,该驱动JAR文件就是e:\mysql-connector-java-5.1.30-bin.jar文件,所以需要把该文件添加到环境变量CLASSPATH里。
3.我的电脑-->右键,属性-->环境变量,添加CLASSPATH环境变量: .;E:\mysql-connector-java-5.1.30-bin.jar(注意:一定要有 .;它意味着包含当前路径)
4.此时再用EditPlus运行
程序报错指向了23行:
说明是root权限问题。原因是root的密码错了,密码不是程序的“32147”,而该是我自己设置的密码。
4.把程序的密码改成我自己的密码,再用EditPlus运行
运行runConnMySql.cmd文件,结果如下:
总结:有两个错误:1.没有将MySQL的数据库驱动e:\mysql-connector-java-5.1.30-bin.jar添加到CLASSPATH环境变量中,导致SQL没有驱动文件
2.访问SQL数据库时root的密码不正确导致无法访问SQL。
问题:为了避免每次运行程序时都更改程序的root密码,有一种方法
1.我的电脑-->右键,服务-->停止MySQL服务
2.将MySQL在ProgramData目录下的my.ini配置文件的mysqld添加一条skip-grant-tables命令,该命令的功能是跳过权限验证,不用验证就操作MYSQL。
3.重启MySQL服务器:我的电脑-->右键,服务-->启动MySQL服务
此时,程序里的用户名和密码随意怎样都可以访问SQL数据库
比如:将用户名和密码随意改成“1”,“1”
运行结果如下: