四步详解Java连接SQL Server 2008的JDBC与ODBC方法与代码示例
需积分: 43 167 浏览量
更新于2024-09-10
1
收藏 322KB DOC 举报
本文将详细介绍Java连接SQL Server 2008的四种详细方法,包括使用JDBC-ODBC桥和JDBC驱动,以及针对Windows身份验证和SQL Server身份验证的不同连接策略。以下是每种方法的详细步骤和示例代码:
1. JDBC-ODBC桥连接
- 首先,需要在Windows系统上配置ODBC数据源,通过控制面板的管理工具>数据源(ODBC)添加SQL Server数据源。
- 完成数据源设置后,可以通过以下代码连接到数据库:
```java
try {
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
} catch (ClassNotFoundException ex) {
System.out.println("数据库驱动加载失败");
}
String url = "jdbc:odbc:sqlserver;";
String sql = "select * from exa";
Connection conn = DriverManager.getConnection(url, "", ""); // Windows验证,空字符串代表自动获取登录凭据
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery(sql);
// ...处理查询结果
```
这里,我们使用了`sun.jdbc.odbc.JdbcOdbcDriver`,这是JDBC-ODBC桥提供的驱动,用于连接通过ODBC建立的数据源。
2. JDBC直接连接(SQL Server身份验证)
- 对于SQL Server身份验证,需要知道用户名和密码,代码如下:
```java
String url = "jdbc:sqlserver://[服务器地址];databaseName=[数据库名];integratedSecurity=false;user=[用户名];password=[密码]";
Connection conn = DriverManager.getConnection(url);
// ...其他操作
```
`integratedSecurity=false` 表示不使用Windows身份验证,而是提供明文的用户名和密码。
3. JDBC直接连接(Windows身份验证)
如果数据库支持Windows身份验证,可以省略用户名和密码:
```java
String url = "jdbc:sqlserver://[服务器地址];databaseName=[数据库名];integratedSecurity=true";
Connection conn = DriverManager.getConnection(url);
// ...其他操作
```
这里,`integratedSecurity=true` 表示使用Windows用户的凭据进行连接。
4. 使用JDBC驱动直接连接
对于直接使用JDBC驱动,需要下载并添加适当的jar文件,例如`jtds.jar`或Microsoft JDBC Driver for SQL Server。连接代码如下:
```java
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
String url = "jdbc:sqlserver://[服务器地址];databaseName=[数据库名]";
Connection conn = DriverManager.getConnection(url, "[用户名]", "[密码]");
// ...其他操作
```
这里,使用的是Microsoft官方提供的JDBC驱动,适用于更广泛的SQL Server版本。
以上四种方法中,JDBC-ODBC桥适合跨平台且不想暴露数据库用户名和密码的情况,而直接使用JDBC驱动则更为常见,因为它们提供了更稳定和安全的连接。
2019-10-29 上传
2020-12-15 上传
2023-06-13 上传
2023-03-16 上传
2023-05-25 上传
2023-05-23 上传
2023-05-20 上传
2023-10-19 上传
千里之行起于足下
- 粉丝: 79
- 资源: 9
最新资源
- BGP协议首选值(PrefVal)属性与模拟组网实验
- C#实现VS***单元测试coverage文件转xml工具
- NX二次开发:UF_DRF_ask_weld_symbol函数详解与应用
- 从机FIFO的Verilog代码实现分析
- C语言制作键盘反应力训练游戏源代码
- 简约风格毕业论文答辩演示模板
- Qt6 QML教程:动态创建与销毁对象的示例源码解析
- NX二次开发函数介绍:UF_DRF_count_text_substring
- 获取inspect.exe:Windows桌面元素查看与自动化工具
- C语言开发的大丰收游戏源代码及论文完整展示
- 掌握NX二次开发:UF_DRF_create_3pt_cline_fbolt函数应用指南
- MobaXterm:超越Xshell的远程连接利器
- 创新手绘粉笔效果在毕业答辩中的应用
- 学生管理系统源码压缩包下载
- 深入解析NX二次开发函数UF-DRF-create-3pt-cline-fcir
- LabVIEW用户登录管理程序:注册、密码、登录与安全