博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

Java链接数据库SQl Server2005

Posted on 2009-06-15 09:39  Anna Yang  阅读(817)  评论(0编辑  收藏  举报

烦了好久的问题终于解决了,一时兴奋决定写在博客里面,也不白辛苦这么多时间啊。

Java链接数据库SQL Server2005步骤:

1.到微软官方网站下载2005的jdbc并解压,获得文件sqljdbc.jar。本人使用的是sqljdbc_1.2,解压后即为该文件。

sql jdbc 1.2下载地址: http://download.microsoft.com/download/5/0/2/502F6CBE-66DA-4F76-BD9A-556D1A4A596D/sqljdbc_1.2.2828.100_chs.exe

2.将sqljdbc.jar拷贝到C:\Program Files\Java\jre1.5.0_08\lib\ext路径下(Java虚拟机的默认安装路径)。

3.在环境变量classpath后面添加C:\Program Files\Java\jre1.5.0_08\lib\ext\sqljdbc.jar(即sqljdbc.jar所在的位置,也可以是sqljdbc.jar所在的其他路径)。

4.将下载后的sqljdbc_1.2里面的sqljdbc_auth.dll文件拷贝到C:\WINDOWS\system32下面。

5.在sqlServer2005数据库添加用户名(在“安全性”里面),并授予登录权限,和访问数据库的权限。

6.开始-〉程序-〉sql  server  2005-〉配置工具-〉SQL Server Configuration Manager。启动sql  2005服务。点击  sql  server2005网络配置节点,并选    中”MSSQLserver的协议“节点。启用tcp/ip协议。

7.双击TCP/IP,在弹出的对话框中选择"IP地址"。找到IPAll(最下面的一个),里面的"IP动态端口"后面的数字即为你要是有的端口号,本人的是1028.

8.将sqljdbc.jar导入到要链接数据库SQL2005的项目中:单击该项目“右键”,选择"Build Path",然后选择“Configure Build Path”,在弹出的对话框中选择“Libraries”,点击“Add External JARs”选项,在弹出的对话框中选择sqljdbc.jar所在的路径,本文为:C:\Program Files\Java\jre1.5.0_08\lib\ext。即将sqljdbc.jar添加入项目中了。

9.载入sql  server  2005 jdbc驱动程序,代码片断如下:

            Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");

10.设置连接字符串,并根据连接串获取到数据库的连接。代码片断如下:

        String dbUrl="jdbc:sqlserver://localhost:1028;Database=db_JXC";
        Connection  ConnObj=DriverManager.getConnection(dbUrl,"yfm","数据库登录密码");//用SQL身份登录

    或:

         String dbUrl="jdbc:sqlserver://localhost:1028;Database=db_JXC;integratedSecurity=true;"; //用widows身份登录
        Connection
   ConnObj=DriverManager.getConnection(dbUrl);

11.根据所获取的连接设置sql语句对象的属性。代码片断如下:

     Statement  SQLStatement=ConnObj.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);
 12.准备要执行的sql语句字符串。并把该字符串传给sql语句对象。执行结果保存在一个结果集中。
     ResultSet  RS=SQLStatement.executeQuery("SELECT * FROM BookData");

13.遍历结果集合,并获取用户需要的信息。
      if(RS.next())
  {
      T1.setText(RS.getString("ISBN"));
      T1.setText(RS.getString("BookName"));
      T1.setText(RS.getString("Author"));
      T1.setText(String.valueOf(RS.getString("Price")));
  }
   else
   JOptionPane.showMessageDialog(this, "myBook数据库内,无任何数据");