首先,使用SqlServer2008必须用到最新的驱动包,即Microsoft SQL Server JDBC Driver 2.0,这个可以到微软官网上下载(http://go.microsoft.com/fwlink/?LinkId=144633&clcid=0x804),下载下来的是个exe自解压文件,里面包括两个驱动包:sqljdbc.jar和sqljdbc4.jar。至于这两个包的区别,网上一查便知,在此不必多说,只需要选择需要的一个放到项目下就可以了,同时JDK要用5.0及以上的版本。
下面详细说明,连接不上数据库的原因。由于目前使用SqlServer2008数据库的用户很少,因此网上关于SqlServer2008相关问题的资料更少,而且重复转载的很多。所以查找问题出现的原因花费了我很长时间。问题的根本原因在于SqlServer2008的端口1433未被监听。至于论坛上关于TCP/IP的设置,或者动态端口的设定(可以不设定)等只是解决问题的一部分,这些设置是必须的,也很容易在网上查到(可以看这个帖子http://topic.csdn.net/u/20100828/21/afafa037-a0b7-4d76-a237-b676c834c07e.html),我也不多说了。
如何查看1433端口是否被监听?
1.打开命令行(快捷键win+r,输入cmd,回车);
2.输入netstat,回车;如果其中本地地址栏里没有127.0.0.1:1433,则说明SqlServer的1433端口未被监听,继续进行下面的操作;
3.继续在命令行中输入 cliconfg 回车,打开SqlServer客户端网络使用工具,在常规选项卡中观察“禁用协议”和“按顺序启用协议”,如果禁用协议中有TCP/IP和Named Pipes则分别选中,并启用他们,确定。
4.最后重启SqlServer就可以了。
至于,连接数据库的JAVA代码在下载下来的驱动包里有帮助文档和示例代码,在此就不赘述了。