通过Java连接Sql Server数据库

1、下载JDBC

JDBC是Java DateBase Connectivity的简写,翻译过来就是java连接数据库,或者更通俗地说就是java语言操作数据库。JDBC的本质其实是官方定义的一套操作所有关系型数据库的规则,也就是接口。

微软官方jdbc下载地址:https://www.microsoft.com/zh-cn/download/details.aspx?id=11774

下载之后解压到相应位置,找到Microsoft JDBC Driver 6.0 for SQL Server\sqljdbc_6.0\chs\jre8\sqljdbc42.jar包,我将该包放到了D:\sqljdbc文件夹中,方便添加。

配置系统环境变量,将该包位置添加到环境变量CLASSPATH中

2、配置Sql Server

打开Sql Server配置管理器

这里我使用的是SQLEXPRESS的协议

启用TCP/IP和NamedPipes,并设置TCP/IP属性,改IP1地址为127.0.0.1,并启用所有IP

设置IPALL的TCP端口为1433(一般默认使用1433端口)

默认端口可在客户端协议中进行修改

设置完成后需要重启该协议才会生效

注意,MSSQLSERVER启动时会导致SQLEXPRESS启动失败。

3、数据库设置

使用SQLEXPRESS服务器,通过Windows身份验证进入

设置登录名,取消强制实施密码策略

启用登录名,并授权连接数据库

在属性中设置安全性,开启双模式身份验证

重启SQL Server客户端后进行登录测试

4、在IDEA中,使用Java连接SQL Server数据库

sqljdbc6.0,需要java jdk版本低于9,这里建议使用jdk8

jdk8官网下载地址:Java Downloads | Oracle

添加依赖sqljdbc42.jar

执行代码进行测试

import java.sql.*;

public class Test {
    public static void main(String[] args) {
        String driverName = "com.microsoft.sqlserver.jdbc.SQLServerDriver";
        String dbURL = "jdbc:sqlserver://localhost:1433;DatabaseName=master";
        String userName = "sa";
        String userPwd = "123456";
        Connection dbConn = null;
        try {
            // 注册驱动
            Class.forName(driverName);
            // 获取数据库连接
            dbConn = DriverManager.getConnection(dbURL, userName, userPwd);
            System.out.println("连接数据库成功");
        } catch (Exception e) {
            e.printStackTrace();
            System.out.print("连接失败");
        }

    }
}

常见问题:

1、驱动程序无法通过使用安全套接字层(SSL)加密与 SQL Server 建立安全连接。错误:“The server selected protocol version TLS10 is not accepted by client preferences [TLS12]”

解决:该问题可以通过降低驱动版本来解决,也可以修改安全协议。

在你的设备上找到jdk的安装目录Java\jdk1.8.0_351\jre\lib\security下的java.security修改安全协议的配置即可。删掉这两个:TLSv1、TLSv1.1。特别要注意的是,如果你是选择了jre的运行环境来运行,那就是这个目录【\jre1.8.0_351\lib】。

修改前:

修改后:

2、通过端口 1433 连接到主机 localhost 的 TCP/IP 连接失败。错误:“Connection refused: connect。

解决:

2.1 检查你进行连接的URL是否正确

2.2 关闭电脑防火墙

2.3 检查Sql Server的设置,重启SQL Server服务

参考:

使用Java连接SQLserver数据库_数据库_积极向上的小徐-DevPress官方社区

  • 23
    点赞
  • 247
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 6
    评论
使用 Java 连接 SQL Server 数据库,需要使用 Microsoft JDBC 驱动。您需要下载该驱动并将其添加到您的 Java 项目中。然后,您可以使用 JDBC API 建立与 SQL Server连接,并执行各种数据库操作,如查询和更新。 以下是一个简单的示例代码: ``` import java.sql.*; public class Main { static final String JDBC_DRIVER = "com.microsoft.sqlserver.jdbc.SQLServerDriver"; static final String DB_URL = "jdbc:sqlserver://<hostname>:<port>;databaseName=<database>"; static final String USER = "<username>"; static final String PASS = "<password>"; public static void main(String[] args) { Connection conn = null; Statement stmt = null; try { Class.forName(JDBC_DRIVER); conn = DriverManager.getConnection(DB_URL, USER, PASS); stmt = conn.createStatement(); String sql; sql = "SELECT * FROM <tablename>"; ResultSet rs = stmt.executeQuery(sql); while (rs.next()) { // Retrieve data by column name int id = rs.getInt("<column1>"); String name = rs.getString("<column2>"); // Display values System.out.print("ID: " + id); System.out.println(", Name: " + name); } rs.close(); stmt.close(); conn.close(); } catch (SQLException se) { // Handle errors for JDBC se.printStackTrace(); } catch (Exception e) { // Handle errors for Class.forName e.printStackTrace(); } finally { // finally block used to close resources try { if (stmt != null) stmt.close(); } catch (SQLException se2) { } try { if (conn != null) conn.close(); } catch (SQLException se) { se.printStackTrace(); } } } } ``` 请注意,在上面的代码中,您需要替换 `<hostname>`,`<port>`,`<database>`,`<username>`,`<password>`,`<tablename>` 和 `<column1>`,

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

月望曦

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值