JDBC连接SQL server 2005 全过程

从昨天开始本人开始用jdbc连接数据库,花了整整一天时间,中间花了很多坎坷,现在终于好了写一下经历,让后来人可以顺着我的脚步走。

首先在同事那要了个JDK,很开心的安装上去了,配了一下JDK,但是网上给的都不好,有好多都是错的,害的我配置JDK就花了半个小时时间,现在发一个比较权威的方法:参见《JDK环境变量设置》,没截图,截图发不上来。

然后安装Eclipse,在网上找了一段连接数据库的代码,复制粘贴上去,有语法错误,根据Eclipse的提示原来是说连接数据库要加try catch,于是就把try catch 加上。语法没问题了,很开心的运行了一次,开始什么都没反应,过了大概2S后有反应了,全是错误信息还很长,具体什么错误没看把第一行复制粘贴到google上,说什么要安装JDBC驱动。

真正的恶梦开始了...

在网上找JDBC驱动,找啊找,找到了3个jar文件,网上说要到导入到工程中,完了怎么导入不会啊,.net中很简单添加引用就可以了,这个没添加引用啊,就到网上找找。这里也把导入jar包的方法放上来参见《导入Jar包》

Jar包导入还后,又运行了一下还是有问题,网上看了一下说sqlserver2000 和2005的jdbc不一样,然后就到官方网站上下了个,这下不会再下错吧。http://download.microsoft.com/download/1/c/a/1cae7cc0-c010-4e0c-b1b8-7915360ee0b9/sqljdbc_1.0.809.102_chs.exe 顺便发个地址。

把正确的JDBC到人到项目中,运行了一下,还是不行,火了。看看天已经黑了,就找了java高手问问,人家说没搞过。

第二天早上来了接着搞,看了下提示说"无法连接TCP/IP" 网上说是TCP/IP没有启动,现在给出TCP/IP启动的方法。

参见《TCP/IP启动》

在启动TCP/IP时中间有个地方要配置SQL Server Configuration Manager,我的电脑不知道是怎么回事,怎么也打不开。

下面再给出SQL Server Configuration Manager打不开时的方法。参见《SQL Server Configuration Manager》、

又运行了一下代码好了,呵呵。

现在总结一下:1、配置jdk 2、安装jdk 2、配置sql server2005

发一下代码

import java.sql.*;

public class HellowWorld {
 public static void main(String []args){
  String str = "Hello World!";
  System.out.println(str);
   Connection conn = null;
      Statement stmt = null;
  try{
     Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
     String url="jdbc:sqlserver://localhost:1433; DatabaseName=TestDB";   
     String user="sa";
     String password="abc123!"; // 用户名和密码在此都设为空;
     conn= DriverManager.getConnection(url,user,password);
     stmt=conn.createStatement();
     String sql = "select * from TestTAB";
     ResultSet rs = stmt.executeQuery(sql);
     while(rs.next())
     {
      System.out.println(rs.getString(1));
     }  
  }catch(Exception ex){
   System.out.println(ex.toString());
  }
  finally{
   if(stmt!=null){
    try{
      stmt.close();
    }catch(Exception ex){}    
   }
   if(conn!=null){
    try{
     conn.close(); 
    }catch(Exception ex){}    
   }   
  }
  System.out.println("End");
 }
}

《JDK环境变量设置》

第一、下载JDK1.6,现在最新版本是JDK1.6_11,并点击安装。

第二、JDK安装完成后,就进行环境变量的设置。

          1、右击我的电脑>“属性,选择高级,点击环境变量的按钮。

              

         2、在系统变量里,点击新建,在变量名输入java_home  ;变量值输入D:\Program Files\Java\jdk1.6.0_10   ,点击确定。

             

             同上,新建一个系统变量,变量名为:classpath;变量值:.;%java_home%\lib;%java_home%\lib\ tools.jar ,点击确定。

             

            在系统变量中,点击Path变量,点解编辑,在变量值中添加:%java_home%\bin;%java_home%\jre6\bin;  ,点击确定。           

   3、测试:

        新建一个txt文本,复制以下代码:

                 public class test

              {

                    public static void main(String[] args)

                    {

                       System.out.println("Hello World!");

                    }

              }

        保存后续命为.java的文件,且文件名为test.java

       打开命令提示符,输入F: 回车,输入javac test.java 回车,输入java test 输出结果为:Hello World

《导入Jar包》

1、鼠标右击工程

2、选择属性

3、点击Java Build Path

4、点击Libraries

5、点击Add External Jars..

6、然后选中要选择的jar包

《TCP/IP启动》

若安装时选择使用Windows帐户登录SQL Server,那么首先要打开sa账户。

使用Manager Studio连接SQL Server,在数据库服务器图标(左侧树状图最顶端)点右键,选择属性,选择弹出对话框中左侧的安全性,使用SQL Server和Windows身份验证模式 。 关闭该对话框。

展开左侧树状图中 安全性,展开 登录名,配置sa帐户的属性,为sa重设密码。并将sa的 状态(弹出对话框左侧最下面)中的 登录 设为启用。

点击确定保存设置。

配置SQL Server Configuration Manager(配置管理器)。

选择 SQL Server 2005 网络配置 中的 SQLEXPRESS的协议 ,启用 TCP/IP 协议。

SQL Server 2005 服务 中 重启所有服务。

选择 SQL Server 2005 网络配置 中的 SQLEXPRESS的协议 ,双击 TCP/IP ,在IP地址 页中设置TCP动态端口为1433(此为SQL Server默认端口,当然可以使用其它的,但在后面连接时须说明)

SQL Server 2005 服务 中 重启所有服务。

《SQL Server Configuration Manager》

解决方法一

1 右击“我的电脑”-->“管理”
2 在“本地用户和组”内的Administrators组上双击,出现添加属性对话框。
3 单击“添加”按钮,出现添加用户对话框
4 单击“高级”按钮,再单击“搜索”(或是“立即查找”)按钮。注:此'NT AUTHORITY\NETWORK SERVICE'用户为系统内置帐户,无法直接添加。
5 在“搜索结果”内选择“Network Service”用户后,单击“确定”

解决方法二:检查一下 windows下的system32 中是否有framedyn.dll这个系统文件,如果没有到system32 下的wbem文件中拷贝framedyn.dll到system32 目录下。 我进到system32目录找framedyn.dll文件,果然没有找到,再进入system32\wbem目录,找framedyn.dll,拷贝到system32目下。再次进入配置管理器就一切正常了。 

原文地址:https://www.cnblogs.com/shuzhengyi/p/1822406.html