1.第一步,打开SQL Server的配置管理器
第二步,如下图所示,找到SQL Server 网络配置,点开他的小箭头,可以看到"[你数据库名的协议]",下图中的为[MSSQLSERVER],选中它,看右边栏
第三步,如果Named Pipes没有被启用,则右键->启用。
Enable:启用 , Disable:废弃
同时,右击TCP/IP,选择启用
第四步,双击TCP/IP(或者,右键,属性),然后再弹出的窗口选择IP地址的选项卡,将IP1和IP10的[IP地址]设置为127.0.0.1(我的本机电脑上没有IP10,最大的数字就是IP6,所以把IP6设置为127.0.0.1)
并且,把所有IPX(X为各个数字)的启用设置为[是]
第五步,拖动下拉条到最下方,将IPALL中的[TCP端口],设置为1433,其余不变
然后重启计算机
第六步,用telnet命令测试1433端口是否打开,首先要确保telnet服务开启,详情看下面
找到控制面版
找到程序和功能
点击[启用或关闭Windows功能]
找到telnet客户端,勾选上,然后点击确定即可
第七步,运行cmd,输入命令,telnet 127.0.0.1 1433 , 注意命令是有空格的
如下图所示,则为链接成功
第八步,下载jdbc,可以到微软官网下载,或者以下打开链接,[http://www.microsoft.com/zh-cn/download/details.aspx?id=11774]
这里jre7和jre8要根据安装的java版本来选择,这里因为本机上安装的是jre7
所以选择jre7的sqljdbc41.jar包
第九步,设置sqljdbc41.jar包的环境变量,右键[我的电脑],依次进入,属性,高级系统设置,环境变量。接着,在系统变量中,双击CLASSPATH变量,对其进行编辑,把sqljdbc41.jar包的路径添加进去,注意环境变量之间要用 ; 来分隔开(大写字母D前面,有一个分号 ; )
第十步,把sqljdbc41.jar的包,复制到jdk目录下的jre\lib\ext文件夹中
然后把sqljdbc41.jar的包,复制到jre目录下的lib\ext文件夹中
最好是有jre文件夹,就把sqljdbc的包放到jre文件夹下的lib\ext中
注意,只有sqljdbc41.jar !!如果把sqljdbc.jar和sqljdbc4.jar都拷在一起的话,这样就算你全都做对了,也会持续出现有“此驱动程序不支持JRE1.7,请使用支持JDBC4.0的sqljdbc4.jar的类库”的问题。因为jdk默认地选择了sqljdbc.jar(前面我已经提到,只留下sqljdbc41.jar)
第十一步,用Ecplise链接SqlServer数据库,首先打开sqlserver数据库,新建一个库作为测试用,我这里建了一个work的库,接着退出SqlServer数据库
打开Ecplise,新建一个project,名字可以随意起一个,例如test
然后右键src,依次选择BuildPath , Configure Build Path
接着选择Library选项,然后点击Add External JARS
接着,找到sqljdbc41.jar的路径,把这个jar包添加进去
添加进去后,如下图所示。
ecplise的jdk版本最好调到1.7(这里已经具体的java版本而定)
jre这里的话用ecplise的默认jre或者我自行添加的jdk路径都是没问题的
jdk7对应的就是jre7,所以jdbc的驱动要选对
第十一步,在ecplise中通过代码验证是否可以链接,例如,下面的代码
packagepkg;
importjava.sql.*;
publicclass Main {
publicstatic void main(String [] args)
{
StringdriverName="com.microsoft.sqlserver.jdbc.SQLServerDriver";
StringdbURL="jdbc:sqlserver://localhost:1433;DatabaseName=你的数据库名";
String userName="填写你的用户名,我的是sa";
String userPwd="填写你的密码";
try
{
Class.forName(driverName);
ConnectiondbConn=DriverManager.getConnection(dbURL,userName,userPwd);
System.out.println("连接数据库成功");
}
catch(Exception e)
{
e.printStackTrace();
System.out.print("连接失败");
}
}
}
最后链接成功就可以查询数据表了