JDBC 连接SQLServer 错误总结

来源:互联网 发布:手机淘宝客户端删评价 编辑:程序博客网 时间:2024/06/05 15:50

这是本人遇到的清苦样,本来没打算写下来的,可到目前位置让我纠结了整整两天的问题解决  这真的是让我有点喜出望外,

这也不是什么大问题,也就是我这种新手才会遇见的,因为刚开始接触到javaEE 本来原来学javaSE的时候也用过JDBC连接数据库,可当时

也没用SQLServer ,也就是用了一个Access数据库,所以现在在连接SQLServer的时候,以至于出现了这个小小的问题就让我纠结了这么久,于是、我觉得把我出现问题到找问题,再到找出问题得到解决的过程写下来,以便将来的新手们能有一点点小小的体会

 

 

刚开始,我是在做一个简单的用户登录系统,用javaEE+Eclipse+MyEclipse 、做好Login 、LoginCL、Welcome  JSP文件后,(代码依依写完),本来还感觉蛮有成就感的,于是带有一点喜庆的就开始运行,但结果却让我大失所望,login的页面是出来了,可当我登录用户名以及密码后,却让我不知所措的跳到了错误的页面,无论我怎么试,一遍,两遍、甚至更多,结果还是那样无情,于是开始了我找错误的征途。

 

开始的我却恍惚的连异常都没仔细的看 本来作为一个快接触java一年的人来说,遇到类似的问题时,首先得要把异常弄清楚才可以去找错误,而当时的我却没有这么做,而是去找jsp代码以及脚本和HTML代码的错误,于是、百失败不灵、这时候,突然心灰意冷、从来没对java失去过任何信心的我 感觉有点感觉失望,茫然不知所措了,代码始终还是在哪里,无论怎么改,怎么换,甚至是一个标点,一个分号,此刻在我眼里都像一颗颗大石头,我紧抓不放,任然错误终究是错误、冷静,这个时候必须的冷静,回想回想。

如果要找错误的话,估计首先要从连接数据库那段儿代码找起,于是我写了一个测试类,目的是测试出我的jsp代码到底有没有连接到数据库,以便去操作到数据库中的数据,测试类如下:

 

 

 

结果却让我又吃一大惊:出现了一下异常:

 

 

 

原来如此啊,根本就没连接到数据库,于是又开始了查找没连接到数据库的错误。“如果没有引进sqljdbc.jar的话 异常应该还会提示:加载驱动失败,而实际确实夹在驱动成功,那肯定不是这个包的问题,要想找出错误的根源,我想还得应该从这个语句入口:

String url = "jdbc:sqlserver://localhost:1433;DatabaseName=MYDB";

conn = DriverManager.getConnection(url, userName, password);         而这个语句我是在是怎么也看不出来它有错啊,老天!问问别人吧,或许是我这时候神经恍惚了。于是我问了问我一个朋友(也是从事编程的朋友)  没错啊,my god!难道是世界末日来临!  不行、一定要弄清楚到底那里出错额,,一定能够是数据库的问题,一定,只剩下这个了,于是我又开始检查数据库  在我所建立的数据库里面用数据库查询语句查看了端口号,没错呀 1433  到底是那里,我要崩溃了!于是我开始通过我们强大的谷歌,百度....于是过了一天....”

 

 

 

通过了解,原来是数据库默认的那个TCP/IP协议默认是禁用了的,哎,不愧是新手,这个问题不知道也是正常的,可为什么就折腾了我这么久呢,还是那句话,新手就是新手,这才是痛苦的开始,了解到错误的根源,是没有开启数据库的TCP/IP协议,于是我按照了解的准备去打开SQL Server Configuration Manager  可又一幕让我无法窒息,对于一个初级程序员来说:“

无法连接到WMI提供程序。你没有权限或者该服务器无法访问。请注意你只能使用SQL SERVER 配置管理器来管理sql server 2005服务器。找不到指定的模块。[0x8007007e] )” 该死的SQLServer,这究竟是怎么了,怎么会打不开,于是我又通过网络,继续查看到底为什么打不开这个东西(毕竟、网络也是我们有力的老师)哇!好多哦  就是关于这个为什么打不开SQL Server Configuration Manager的问题,要想将数据库里面的TCP/IP协议开启,就必须要打开它,于是,我看,我看,我看看看,依依的按照前辈们说的去试。

 

 

可是问题还是没解决,我打开过我的电脑,在本地组,用户里面的Admain添加NETWORKSERVICE 、也按照网上的前辈所说,在dos里面

输入一大串的命令,可还是不行啊,网上的先辈们说的我都试了,问题还是没得到解决。实在是郁闷的不行了,带着这种万分的纠结,又度过了一天,可惜我的时间,就这么一点点的浪费掉了。MY GOD!

 

始终找不到错误,我决定重装这个现在让我超级郁闷的SQLServer了,决定后,我又开始了噼噼啪啪的忙碌,光盘呢,在哪儿,重装,重装!

重装这总该可以了吧  您折磨我也该够了吧  老天爷!终于装完啦,嘿嘿,于是我好奇却又很害怕的打开SQL Server Configuration Manager,狂晕!还是那串让我窒息的异常:“无法连接到WMI提供程序。你没有权限或者该服务器无法访问。请注意你只能使用SQL SERVER 配置管理器来管理sql server 2005服务器。 找不到指定的模块。[0x8007007e] )”

 

于是我又开始质询前辈,终于找到问题所在,我在安装SQLServer的时候没有安装IIS  我记不清楚这个是为什么了,反正当我装上IIS  在将数据库注册表  等之类全部卸载完之后(卸载了差不多一个小时,当然也许是我的电脑垃圾  哈哈 )在重新装过之后,一切终于雨过天晴!!

 

 

 

我想:遇到问题我们至少不应该慌,应该从错误的根源找起,就像我,如果我一开始就仔细的查看异常,也就不会在代码上花掉了那么多时间了,我都怀疑以前我看异常是为了什么,到关键时候居然没有看,无语了对自己,通过这次的失误,也许真的又让我向前走了一小步,至少它让我知道,遇到事情, 不要慌,从本源找起,如果自己实在是不懂(人总是从新手做起),就得虚心的请问别人,或是自己动手问问网页,问问谷歌,问问百度,也许,因为它们更是一个不错的老师,里面汇集了很多先辈师兄们的经验。

 

 

哈哈  就分享到这里了,废话是有点多了哈,以前都没写过这些,希望看的不要见笑才好!!