如何开始使用 Microsoft JDBC [微软官方文档]

jdbc连接Microsoft SQL Server 2014 关于jdbc连接Microsoft SQL Server 2014 阅读详情

如何开始使用 Microsoft JDBC

文章编号:313100
最后修改:2005年8月12日
修订:3.0

概要

本文介绍如何使用 Microsoft SQL Server 2000 JDBC 驱动程序连接到 SQL Server 2000。


注意:有关 Microsoft SQL Server 2000 JDBC 驱动程序的安装说明,请参见 Microsoft SQL Server 2000 Driver for JDBC 安装指南

安装了 Microsoft SQL Server 2000 JDBC 驱动程序后,可以通过两种方式从您的程序连接到数据库:使用连接 URL,或使用 JNDI 数据源。本文介绍如何使用连接 URL 配置和测试数据库连接。

连接到数据库的一种方法是通过 JDBC 驱动程序管理器,使用 DriverManager 类的 getConnection 方法。使用此方法时,最简单的方式是使用一个包含 URL、用户名和密码的字符串参数。本文中的以下几节将介绍如何从 JDBC 程序载入 Microsoft SQL Server 2000 JDBC 驱动程序。

设置 CLASSPATH 变量

Microsoft SQL Server 2000 JDBC 驱动程序 .jar 文件必须在 CLASSPATH 变量中列出。CLASSPATH 变量是 Java 虚拟机 (JVM) 用于在您的计算机上查找 JDBC 驱动程序的搜索字符串。如果驱动程序未在 CLASSPATH 变量中列出,尝试载入驱动程序时将出现以下错误信息:
java.lang.ClassNotFoundException:com/microsoft/jdbc/sqlserver/SQLServerDriver
设置系统 CLASSPATH 变量,加入以下各项:
/Your installation path/Lib/Msbase.jar
/Your installation path/Lib/Msutil.jar
/Your installation path/Lib/Mssqlserver.jar
以下是一个配置好的 CLASSPATH 变量的示例:
CLASSPATH=.;c:/program files/Microsoft SQL Server 2000 Driver for JDBC/lib/msbase.jar;c:/program files/Microsoft SQL Server 2000 Driver for JDBC/lib/msutil.jar;c:/program files/Microsoft SQL Server 2000 Driver for JDBC/lib/mssqlserver.jar

注册驱动程序

注册驱动程序的目的是为了通知 JDBC 驱动程序管理器载入哪个驱动程序。当使用 class.forName 函数载入驱动程序时,您必须指定驱动程序的名称。以下是 Microsoft SQL Server 2000 JDBC 驱动程序的名称:
com.microsoft.jdbc.sqlserver.SQLServerDriver
下面的代码示例演示如何注册驱动程序:
Driver d = (Driver)Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance();
				

传递连接 URL

必须以连接 URL 的形式传递数据库连接信息。以下是 Microsoft SQL Server 2000 JDBC 驱动程序的模板 URL。请用您数据库的值替换以下值:
jdbc:microsoft:sqlserver://servername:1433
下面的代码示例演示如何指定连接 URL:
con = DriverManager.getConnection("jdbc:microsoft:sqlserver://localhost:1433", "userName", "password");
				
服务器名称值可以是 IP 地址或主机名(假定您的网络可以将主机名解析为 IP 地址)。您可以通过对主机名执行 PING 命令来进行测试,验证是否可以接收到响应,以及响应的 IP 地址是否正确。

服务器名称后面的数字值是数据库侦听的端口号。上文列出的值是示例默认值。确保用您的数据库使用的端口号替换该值。

要获取连接 URL 参数的完整列表,请参见 Microsoft SQL Server 2000 JDBC 驱动程序 HTML 帮助,或参见联机指南。请参见“连接字符串属性”一节。

用于测试连接的代码示例

下面的代码示例尝试连接到数据库,并显示数据库名称、版本和可用编目。请用您服务器的值替换代码中的服务器属性:
import java.*;
public class Connect{
     private java.sql.Connection  con = null;
     private final String url = "jdbc:microsoft:sqlserver://";
     private final String serverName= "localhost";
     private final String portNumber = "1433";
     private final String databaseName= "pubs";
     private final String userName = "user";
     private final String password = "password";
     // Informs the driver to use server a side-cursor,
     // which permits more than one active statement
     // on a connection.
     private final String selectMethod = "cursor";

     // Constructor
     public Connect(){}

     private String getConnectionUrl(){
          return url+serverName+":"+portNumber+";databaseName="+databaseName+";selectMethod="+selectMethod+";";
     }

     private java.sql.Connection getConnection(){
          try{
               Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
               con = java.sql.DriverManager.getConnection(getConnectionUrl(),userName,password);
               if(con!=null) System.out.println("Connection Successful!");
          }catch(Exception e){
               e.printStackTrace();
               System.out.println("Error Trace in getConnection() : " + e.getMessage());
         }
          return con;
      }

     /*
          Display the driver properties, database details
     */

     public void displayDbProperties(){
          java.sql.DatabaseMetaData dm = null;
          java.sql.ResultSet rs = null;
          try{
               con= this.getConnection();
               if(con!=null){
                    dm = con.getMetaData();
                    System.out.println("Driver Information");
                    System.out.println("/tDriver Name: "+ dm.getDriverName());
                    System.out.println("/tDriver Version: "+ dm.getDriverVersion ());
                    System.out.println("/nDatabase Information ");
                    System.out.println("/tDatabase Name: "+ dm.getDatabaseProductName());
                    System.out.println("/tDatabase Version: "+ dm.getDatabaseProductVersion());
                    System.out.println("Avalilable Catalogs ");
                    rs = dm.getCatalogs();
                    while(rs.next()){
                         System.out.println("/tcatalog: "+ rs.getString(1));
                    }
                    rs.close();
                    rs = null;
                    closeConnection();
               }else System.out.println("Error: No active Connection");
          }catch(Exception e){
               e.printStackTrace();
          }
          dm=null;
     }

     private void closeConnection(){
          try{
               if(con!=null)
                    con.close();
               con=null;
          }catch(Exception e){
               e.printStackTrace();
          }
     }
     public static void main(String[] args) throws Exception
       {
          Connect myDbTest = new Connect();
          myDbTest.displayDbProperties();
       }
}

				
如果此代码运行成功,其输出结果应类似于以下内容:
Connection Successful!
Driver Information
Driver Name:SQLServer
Driver Version: 2.2.0022

Database Information
Database Name:Microsoft SQL Server
Database Version:Microsoft SQL Server  2000 - 8.00.384 (Intel X86)
May 23 2001 00:02:52
Copyright (c) 1988-2000 Microsoft Corporation
Desktop Engine on Windows NT 5.1 (Build 2600: )

Avalilable Catalogs
catalog:master
catalog:msdb
catalog:pubs
catalog:tempdb
					

有关排除连接故障的基本信息

下面是尝试连接到 SQL 服务器时常见的错误信息:
java.sql.SQLException:[Microsoft][SQLServer 2000 Driver for JDBC][SQLServer]Login failed for user 'user'.Reason:Not associated with a trusted SQL Server connection.
如果将 SQL Server 2000 的验证模式设置为“Windows 验证模式”,则会出现此错误信息。Microsoft SQL Server 2000 JDBC 驱动程序不支持使用 Windows NT 验证进行连接。您必须将 SQL Server 的验证模式设置为“混合模式”,该模式既允许 Windows 验证,也允许 SQL Server 验证。
java.sql.SQLException:[Microsoft][SQLServer 2000 Driver for JDBC]This version of the JDBC driver only supports Microsoft SQL Server 2000. You can either upgrade to SQL Server 2000 or possibly locate another version of the driver.
当您尝试连接到 SQL Server 2000 以前的 SQL Server 版本时,则会出现此错误信息。Microsoft SQL Server 2000 JDBC 驱动程序仅支持与 SQL Server 2000 进行连接。

这篇文章中的信息适用于:
Microsoft SQL Server 2000 Driver for JDBC
Microsoft SQL Server 2000 64-bit Edition
Microsoft SQL Server 2000 标准版
关键字: 
kbhowtomaster KB313100
Microsoft和/或其各供应商对于为任何目的而在本服务器上发布的文件及有关图形所含信息的适用性,不作任何声明。 所有该等文件及有关图形均"依样"提供,而不带任何性质的保证。Microsoft和/或其各供应商特此声明,对所有与该等信息有关的保证和条件不负任何责任,该等保证和条件包括关于适销性、符合特定用途、所有权和非侵权的所有默示保证和条件。在任何情况下,在由于使用或运行本服务器上的信息所引起的或与该等使用或运行有关的诉讼中,Microsoft和/或其各供应商就因丧失使用、数据或利润所导致的任何特别的、
微软提供的MSSQLJDBC连接 设置 CLASSPATH 变量Microsoft SQL Server 2000 JDBC 驱动程序 .jar 文件必须在 CLASSPATH 变量中列出。CLASSPATH 变量是 Java 虚拟机 (JVM) 用于在您的计算机上查找 JDBC 驱动程序的搜索字符串。如果驱动程序未在 CLASSPATH 变量中列出,尝试载入驱动程序时将出现以下错误信息: java.lang.ClassN 阅读详情

相关推荐

Microsoft JDBC 驱动 vs jTDS 驱动对比指南

【代码】Microsoft JDBC 驱动 vs jTDS 驱动对比指南。

qq_44724453的博客 1202

微软官方jdbc数据库驱动程序

微软官方jdbc数据库驱动程序 具体安装与使用方法请参考: http://apps.hi.baidu.com/share/detail/17488405

Microsoft JDBC Driver XX (XX表示版本号)for SQL Server的安装

使用eclipse与server sql 时,需要下载微软jdbc 驱动连接,(重点来了)唯一需要注意的是Microsoft JDBC Driver XX (XX表示版本号)for SQL Server驱动的版本支持的java中jre的版本与SQL Server的版本(我为什么会强调这个问题呢?因为网上有很多有关的教程,但是都没有提到这一点。也因为此,当我想要用到java编写数据库连接的程序时,...

GUIDchen的博客 4156

windows平台下的Mysql JDBC驱动

windows平台下的Mysql JDBC驱动程序,经验证可以配合eclipse平台的Sql explore使用

SQL Server报错

JDBC连接SQL Server访问出错 报错一:com.microsoft.sqlserver.jdbc.SQLServerException: 用户 ‘sa’ 登录失败 报错二:com.microsoft.sqlserver.jdbc.SQLServerException: 通过端口 1433 连接到主机 localhost 的 TCP/IP 连接失败。错误:“connect timed out。请验证连接属性。确保 SQL Server 的实例正在主机上运行,且在此端口接受 TCP/IP 连接,还

qq_54929444的博客 9494

Hibernate3.2与Sql连接时出现的--java.lang.AbstractMethodError: com.microsoft.jdbc.base.BaseDatabaseMetaData.supportsGetGeneratedKeys()Z

  报错信息:java.lang.AbstractMethodError: com.microsoft.jdbc.base.BaseDatabaseMetaData.supportsGetGeneratedKeys()Z解决:问谷老师得知是microsoft提供的数据库驱动存在bug。需要换一种驱动连接,使用jtds(下载地址:http://sourceforge.net/proj

打造核心知识库 3806

JDBC-文档

JDBC:连接数据库的桥梁 类库文件;

Cream336的博客 1046

JDBC配置教程+总结(sql server/mysql/maven)

一、JDBC配置 百度搜索sql server jdbc下载进入微软下载官网:https://docs.microsoft.com/zh-cn/sql/connect/jdbc/download-microsoft-jdbc-driver-for-sql-server?view=sql-server-2017 根据版本选择对应的驱动下载,我这里下载的是6.4版本 语言选择简体中...

如何心安理得的在老板眼皮下摸鱼 2万+

微软官方测试jdbc,经修改

[code="java"]package com.hfuu.xl.db; import java.*; import org.apache.log4j.Logger; public class Connect{ private java.sql.Connection con = null; private final String url = "jdbc:s...

编程日常记录与总结 https://franciswmf.iteye.com 159

如何开始使用 Microsoft JDBC

概要loadTOCNode(1, summary);本文介绍如何使用 Microsoft SQL Server 2000 JDBC 驱动程序连接到 SQL Server 2000。 设置 CLASSPATH 变量loadTOCNode(2, summary);Microsoft SQL Server 2000 JDBC 驱动程序 .jar 文件必须在 CLASSPA

630

在JSP中使用 Microsoft JDBC Driver 连接SQL Server2000

本来这个问题是老问题了,但是,查了网上的中文资料,实在是...,要么是讲得不清楚,要不就是环节有问题,CSDN论坛中细细翻阅FAQ中讲得只是JSP代码连接SQL Server,及略带讲述必须安装Microsoft JDBC驱动,只好细细翻阅CSDN论坛贴子,并亲自操刀实践了多次,现总结如下: 情况比想象中的要坏得多:调了一个多小时,终于连接到SQL Server2000,很恼火啊,呵呵!1. 安装

Chenxinyi's Weblog 7236

com.microsoft.sqlserver.jdbc.SQLServerDriver

针对驱动com.microsoft.sqlserver.jdbc.SQLServerDriver所需的三个jar包。

慎用或尽量不要用微软自带的sqlserverjdbc驱动

    微软看到这个标题,肯定不高兴了。不过说实话,在商业应用中,很少有公司真正实用微软的那个什么com.microsoft.jdbc.sqlserver.SQLServerDriver。    其实发现微软驱动的不足,也是很偶然的机会。在一次移植应用中,系统报告了[Microsoft][SQLServer JDBC Driver]ResultSet can not re-read row d

游弋在移动互联网的银狐999 3624

Microsoft JDBC Driver 4.0 for SQL Server下载及安装使用说明

转自:http://www.microsoft.com/zh-cn/download/details.aspx?id=11774   下载 Microsoft JDBC Driver 4.0 for SQL Server,这是一个 Type 4 JDBC 驱动程序,它通过 Java Platform Enterprise Edition 5 和 6 中可用的标准 JDBC 应用程序编程接口

AMinfo的专栏 1万+

Microsoft JDBC Driver 4 0 for SQL Server下载及安装使用说明

Microsoft JDBC Driver 4 0 for SQL Server下载及安装使用说明

qq_44929301的博客 1088

Microsoft JDBC Driver 4.0 for SQL Server:深入解析与应用

数据库驱动在数据访问领域扮演着至关重要的角色。它是一个中间件,负责在应用程序与数据库之间建立连接、执行SQL语句,并将结果返回给应用程序。JDBC(Java Database Connectivity)技术作为数据库连接的标准,为Java开发者提供了统一的方式来访问不同类型数据库。数据库驱动可以理解为是一组实现特定数据库协议的Java类库。开发者通过引入相应的JDBC驱动,便能够在Java应用中实现对数据库的增删改查操作。

weixin_29092787的博客 816

如何连接Java到SQLServer - JDBC Driver 的 Microsoft Windows 版本安装说明

首先要了解:连接JDBC这件事,和那些软件或包的版本有关? 与编译器无关。采用任何版本的Eclipse,IDea都不影响; 与Java版本无关。 这款JDBC-Driver通过 Java Platform Enterprise Edition 中可用的标准 JDBC 应用程序编程接口 (API) 提供数据库连接。内置了两个不同的jar文件以解决更老版本的Java驱动问题。 与SQL Se...

Quaint_Senator的博客 1228
上一篇: SQL Server 2000 JDBC驱动的完整安装及测试说明
下一篇: 解决局域网不能互相访问之全攻略
sun418756752
博客等级 码龄21年 8粉丝 40原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值