使用连接
以下各部分提供了使用 Microsoft SQL Server 2005 JDBC Driver 的 SQLServerConnection 类来连接到 SQL Server 数据库的不同方法的实例。
备注
如果在使用 JDBC 驱动程序连接到 SQL Server 时遇到问题,请参阅“连接疑难解答”获取有关解决方法的建议。
使用 DriverManager 类创建连接
创建到 SQL Server 数据库的连接的最简便方法是加载 JDBC 驱动程序,然后调用 DriverManager 类的 getConnection 方法,如下所示:
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
String connectionUrl = "jdbc:sqlserver://localhost;database=AdventureWorks;integratedSecurity=true;"
Connection con = DriverManager.getConnection(connectionUrl);
此技术将通过使用驱动程序列表中第一个可以与给定 URL 成功连接的可用驱动程序,创建数据库连接。
使用 SQLServerDriver 类创建连接
如果必须为 DriverManager 指定驱动程序列表中的特定驱动程序,可以使用 SQLServerDriver 类的 connect 方法来创建数据库连接,如下所示:
Driver d = (Driver) Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
String connectionUrl = "jdbc:sqlserver://localhost;database=AdventureWorks;integratedSecurity=true;"
Connection con = d.connect(connectionUrl, new Properties());
使用 SQLServerDataSource 类创建连接
如果必须使用 SQLServerDataSource 类创建连接,可以先使用此类的各种 setter 方法,然后调用 getConnection 方法,如下所示:
SQLServerDataSource ds = new SQLServerDataSource();
ds.setUser("MyUserName");
ds.setPassword("*****");
ds.setServerName("localhost");
ds.setPortNumber(1433);
ds.setDatabaseName("AdventureWorks");
Connection con = ds.getConnection();
创建目标为非常特殊的数据源的连接
如果必须创建目标为非常特殊的数据源的数据库连接,可以采用多种方法。每种方法取决于使用此连接 URL 设置的属性。
若要连接到远程服务器上的默认实例,请使用:
String url = "jdbc:sqlserver://MyServer;integratedSecurity=true;"
若要连接到服务器上的特定端口,请使用:
String url = "jdbc:sqlserver://MyServer:1533;integratedSecurity=true;"
若要连接到服务器上的指定实例,请使用:
String url = "jdbc:sqlserver://209.196.43.19;instanceName=INSTANCE1;integratedSecurity=true;"
若要连接到服务器上的特定数据库,请使用:
String url = "jdbc:sqlserver://172.31.255.255;database=AdventureWorks;integratedSecurity=true;"
有关连接 URL 实例的详细信息,请参阅创建连接 URL。
创建具有自定义登录超时的连接
如果必须调节服务器负载或网络流量,可以创建具有特定登录超时值(以秒为单位)的连接,如下所示:
String url = "jdbc:sqlserver://MyServer;loginTimeout=90;integratedSecurity=true;"
创建具有应用程序级别标识的连接
如果必须记录日志并进行分析,则必须将连接标识为源于特定应用程序,如下所示:
String url = "jdbc:sqlserver://MyServer;applicationName=MYAPP.EXE;integratedSecurity=true;"
关闭连接
可以通过调用 SQLServerConnection 类的 close 方法显式地关闭数据库连接,如下所示:
con.close();
这将释放 SQLServerConnection 对象正在使用的数据库资源,或使连接返回到池方案中的连接池。
备注
调用 close 方法还将回滚所有挂起的事务。