JDBC如何连接SQL Server数据库实现增删改查

2024-06-04 1128阅读

目录

一、连接前准备

 1. 环境配置

 2. 下载JAR包

3. 添加环境变量

4. 导入JDBC包

 二、连接SQL Server

 三、实现增删改查

1. 查询数据

2. 添加数据

3. 修改数据

4. 删除数据

5. 拓展


JDBC的全称是Java数据库连接(Java DataBase Connectivity) ,应用程序通过JDBC连接到数据库,使用SQL语句对数据库中的表进行查询、增加、修改、删除等操作。此文章提供JDBC连接SQL Server的所有步骤,帮助大家实现Java对数据库的增删改查!

JDBC如何连接SQL Server数据库实现增删改查 第1张

JDBC访问数据库的方式 

一、连接前准备

 1. 环境配置

我们右键点击“开始”菜单打开“计算机管理”,接下来以此打开树形菜单,启用所有协议。

JDBC如何连接SQL Server数据库实现增删改查 第2张

 下一步,打开控制面版—>程序—>程序与功能—>启用或关闭Windows功能 —>勾选 Telnet客户端

JDBC如何连接SQL Server数据库实现增删改查 第3张

 接下来,重启计算机,在此之前请务必点击“收藏”或“关注”,以免找不到下一步教程。


 重启后,按Win+R,输入cmd后按回车,输入命令:

telnet localhost 1433

进入只有光标闪烁的空白页面即通信成功。

 2. 下载JAR包

下面讲解的方法都是基于 IntelliJ IDEA 软件,如果是 Eclipse 会有细微差别。

首先,在连接JDBC之前,需要下载MS JDBC Driver包,下载地址:下载 Microsoft SQL Server JDBC 驱动程序JDBC如何连接SQL Server数据库实现增删改查 第4张https://learn.microsoft.com/zh-cn/sql/connect/jdbc/download-microsoft-jdbc-driver-for-sql-server

那么如何选择正确的JDBC呢?

请参照以下对应规则下载相应的JDBC驱动版本。

从 Microsoft JDBC Driver 12.2 for SQL Server 开始,支持 Java 开发工具包 (JDK) 19.0 和 Java Runtime Environment (JRE) 19.0。
从 Microsoft JDBC Driver 11.2 for SQL Server 开始,支持 Java 开发工具包 (JDK) 18.0 和 Java Runtime Environment (JRE) 18.0。
从 Microsoft JDBC Driver 10.2 for SQL Server 开始,支持 Java Development Kit (JDK) 17.0 和 Java Runtime Environment (JRE) 17.0。
从 Microsoft JDBC Driver 9.4 for SQL Server 开始,支持 Java Development Kit (JDK) 16.0 和 Java Runtime Environment (JRE) 16.0。
从 Microsoft JDBC Driver 9.2 for SQL Server 开始,支持 Java Development Kit (JDK) 15.0 和 Java Runtime Environment (JRE) 15.0。
从 Microsoft JDBC Driver 8.4 for SQL Server 开始,支持 Java Development Kit (JDK) 14.0 和 Java Runtime Environment (JRE) 14.0。
从 Microsoft JDBC Driver 8.2 for SQL Server 开始,支持 Java Development Kit (JDK) 13.0 和 Java Runtime Environment (JRE) 13.0。
从 Microsoft JDBC Driver 7.4 for SQL Server 开始,支持 Java Development Kit (JDK) 12.0 和 Java Runtime Environment (JRE) 12.0。
从 Microsoft JDBC Driver 7.2 for SQL Server 开始,支持 Java Development Kit (JDK) 11.0 和 Java Runtime Environment (JRE) 11.0。
从 Microsoft JDBC Driver 7.0 for SQL Server 开始,支持 Java Development Kit (JDK) 10.0 和 Java Runtime Environment (JRE) 10.0。
从 Microsoft JDBC Driver 6.4 for SQL Server 开始,支持 Java Development Kit (JDK) 9.0 和 Java Runtime Environment (JRE) 9.0。
从 Microsoft JDBC Driver 4.2 for SQL Server 开始,支持 Java Development Kit (JDK) 8.0 和 Java Runtime Environment (JRE) 8.0。 对 JDBC 规范 API 的支持已扩展为包含 JDBC 4.1 和 4.2 API。
从 Microsoft JDBC Driver 4.1 for SQL Server 开始,支持 Java Development Kit (JDK) 7.0 和 Java Runtime Environment (JRE) 7.0。
从 Microsoft JDBC Driver 4.0 for SQL Server 开始,JDBC 规范 API 的JDBC 驱动程序支持扩展为包含 JDBC 4.0 API。 已在 Java 开发工具包 (JDK) 6.0 和 Java 运行时环境 (JRE) 6.0 中引入了 JDBC 4.0 API。 JDBC 4.0 是 JDBC 3.0 API 的超集。

更详细的与你的JDK版本匹配的JAR包可以从下面的官网文档链接中查找,系统要求 - JDBC Driver for SQL Server | Microsoft Learn

 例如下表就准确指定了相应的版本:

JARJDBC 版本法规遵从性推荐的 Java 版本说明
mssql-jdbc-12.4.0.jre8.jar4.28需要 Java Runtime Environment (JRE) 1.8。 使用 JRE 1.7 或更低版本会引发异常。
mssql-jdbc-12.4.0.jre11.jar4.320需要 Java Runtime Environment (JRE) 11.0 或更高版本。 使用 JRE 10.0 或更低版本会引发异常。

然后在此链接下载合适的jar包:发行说明 - JDBC Driver for SQL Server | Microsoft LearnJDBC如何连接SQL Server数据库实现增删改查 第4张https://learn.microsoft.com/zh-cn/sql/connect/jdbc/release-notes-for-the-jdbc-driver?view=sql-server-ver16#84

下载完后解压缩并打开,可以在目录中找到后缀名为.jar的文件,即需要导入到项目工程的包。

JDBC如何连接SQL Server数据库实现增删改查 第6张

3. 添加环境变量

在添加两个包含.jar的环境变量,例如:

变量名:CLASSPATH
变量值:C:\Program Files\Microsoft JDBC Driver 11.2 for SQL Server\sqljdbc_12.2\chs\mssql-jdbc-12.2.0.jre8.jar;C:\Program Files\Microsoft JDBC Driver 11.2 for SQL Server\sqljdbc_12.2\chs\mssql-jdbc-12.2.0.jre11.jar

JDBC如何连接SQL Server数据库实现增删改查 第7张

打开环境变量的方式。Win7:桌面或开始菜单找到“计算机”->右键单击选择"属性"->高级系统设置->环境变量,Win10:设置->系统->关于->高级系统设置->环境变量,Win11:设置->系统->系统信息->高级系统设置->环境变量。

4. 导入JDBC包

然后我们进入IDEA,点击File—>Priject Structure—>Libraries—> + —>Java —>Select Library Files,选择sqljdbc.jar

 JDBC如何连接SQL Server数据库实现增删改查 第8张

JDBC如何连接SQL Server数据库实现增删改查 第9张

JDBC如何连接SQL Server数据库实现增删改查 第10张

JDBC如何连接SQL Server数据库实现增删改查 第11张

 如果能在首页看到External Libraries下面有sqljdbc42即表示导入成功。

 二、连接SQL Server

JDBC如何连接SQL Server数据库实现增删改查 第12张

 JDBC的实现步骤

通过上图我们了解到,想要实现JDBC首先就需要加载并注册数据库驱动。第一步,加载并注册驱动可以通过java.lang.Class类的静态方法forName实现。

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

 第二步,通过DriverManager类的getConnection方法实现数据库连接。

String databaseName = "数据库名";
String username = "用户名";
String password = "密码";
String dbURL = "jdbc:sqlserver://localhost:1433;databaseName=" + databaseName;
Connection conn = DriverManager.getConnection(dbURL, username, password);

第三步,try…catch抛出异常。

        try {
            Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver";);
            String dbURL = "jdbc:sqlserver://localhost:1433;databaseName=" + databaseName;
            Connection conn = DriverManager.getConnection(dbURL, username, password);
            System.out.println("Successful Connection !");
        } catch (Exception e) {
            e.printStackTrace();
            System.out.println("Connection failed !");
        }

 三、实现增删改查

实现增删改查之前,为了阅读方便,我们需要新建一个容纳这些功能的类,并且创建两个类变量,方便在各个方法中调用。这里我们将类命名为ConnectionDb,创建Connection对象conn。

public class ConnectDb {
    public Connection conn;
}

接下来创建四个方法:查询、增加、修改、删除。

public class ConnectDb {
    private Connection conn;
    public void SelectAll(){}//查询表
    public void AddValue(){}//添加数据
    public void DeleteValue(){}//修改数据
    public void ModifyValue(){}//删除数据
}

下面就是实现方法的代码: 

1. 查询数据

public void SelectAll(String tableName,String where) {
        ResultSetMetaData rsmd = null;
        try {//try catch判断是否有异常
            Statement sqlStatement = conn.createStatement();//创建sql语句
            String sql = "select * from " + tableName+" "+where;
            ResultSet rs = sqlStatement.executeQuery(sql);//执行sql语句
            //下面根据该table输出属性组和所有元组
            rsmd = rs.getMetaData();//获取属性名
            String []arr = new String[0];
            if(rsmd != null) {
                int count = rsmd.getColumnCount();//统计属性个数
                arr = new String[count];
                for (int i = 1; i 

    免责声明:我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自自研大数据AI进行生成,内容摘自(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供学习参考,不准确地方联系删除处理! 图片声明:本站部分配图来自人工智能系统AI生成,觅知网授权图片,PxHere摄影无版权图库和百度,360,搜狗等多加搜索引擎自动关键词搜索配图,如有侵权的图片,请第一时间联系我们,邮箱:ciyunidc@ciyunshuju.com。本站只作为美观性配图使用,无任何非法侵犯第三方意图,一切解释权归图片著作权方,本站不承担任何责任。如有恶意碰瓷者,必当奉陪到底严惩不贷!

    目录[+]