Java 连接 SQL Server 基础教程

本教程将详细介绍如何使用 Java 编程语言连接到 SQL Server 数据库,以进行数据操作。

发布于

SQL Server 是一种由 Microsoft 开发的关系型数据库管理系统 (RDBMS),广泛用于企业级应用程序和数据存储。Java 是一种强大的编程语言,适用于各种应用程序开发。本教程将详细介绍如何使用 Java 编程语言连接到 SQL Server 数据库,以进行数据操作。

本文简介

这篇文章将向您介绍如何使用 Java 连接到 SQL Server 数据库。我们将从设置先决条件开始,然后逐步展示如何创建连接、执行查询、插入数据以及关闭连接。最后,我们将提供一个简单的示例,演示如何连接到一个名为 “users” 的表格,并查询其中的数据。

先决条件

为了连接 SQL Server 数据库,您需要具备以下先决条件:

  1. Java 开发环境:您需要一个 Java 开发环境,如安装了 Java Development Kit (JDK) 的计算机,以便编写和运行 Java 代码。

  2. SQL Server 数据库:确保您有一个可访问的 SQL Server 数据库实例。您可以使用 Microsoft SQL Server Express 版本进行测试或连接到企业版 SQL Server。

  3. SQL Server JDBC 驱动程序:您需要下载并引入 SQL Server 的 Java 数据库连接 (JDBC) 驱动程序,以便 Java 程序能够连接到 SQL Server 数据库。可以从 Microsoft 官方网站获取 SQL Server JDBC 驱动程序。

  4. 数据库连接信息:您需要知道 SQL Server 数据库的连接信息,包括数据库的地址 (host),端口 (port),数据库名称 (database name),用户名和密码。

连接 SQL Server 的步骤

现在,让我们深入了解如何使用 Java 连接到 SQL Server 数据库。

步骤 1: 导入必要的包

在 Java 代码中,首先需要导入必要的包,以便能够使用与 SQL Server 连接相关的类和方法。以下是导入 SQL Server JDBC 驱动程序的示例:

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;
import java.sql.ResultSet;

步骤 2: 创建数据库连接

使用 Java 的 Connection 类创建一个 SQL Server 连接。指定 SQL Server 数据库的连接信息,包括地址、端口、数据库名称、用户名和密码。

Connection connection = null;
try {
    String serverName = "服务器地址";
    String databaseName = "数据库名称";
    String username = "用户名";
    String password = "密码";

    String connectionUrl = "jdbc:sqlserver://" + serverName + ":1433;" + "databaseName=" + databaseName + ";user=" + username + ";password=" + password;

    connection = DriverManager.getConnection(connectionUrl);
} catch (SQLException e) {
    e.printStackTrace();
}

步骤 3: 执行数据库操作

现在,您可以使用 Java 执行各种数据库操作,如查询、插入、更新、删除等。以下是一个示例代码片段,用于查询 SQL Server 数据库中的用户表:

Statement statement = connection.createStatement();
String query = "SELECT username, email FROM users";
ResultSet resultSet = statement.executeQuery(query);

System.out.println("用户列表:");
while (resultSet.next()) {
    String username = resultSet.getString("username");
    String email = resultSet.getString("email");
    System.out.println("Username: " + username + ", Email: " + email);
}

resultSet.close();
statement.close();

步骤 4: 插入数据

要插入数据,您可以使用 Statement 类或 PreparedStatement 类,如下所示:

String insertSQL = "INSERT INTO users (username, email) VALUES ('john_doe', '[email protected]')";
Statement insertStatement = connection.createStatement();
int rowsInserted = insertStatement.executeUpdate(insertSQL);
if (rowsInserted > 0) {
    System.out.println("数据插入成功!");
}
insertStatement.close();

示例

以下是一个简单的 Java 示例,演示如何连接到 SQL Server 数据库、查询用户表并插入一条用户记录:

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;
import java.sql.ResultSet;

public class SQLServerExample {
    public static void main(String[] args) {
        Connection connection = null;
        try {
            String serverName = "服务器地址";
            String databaseName = "数据库名称";
            String username = "用户名";
            String password = "密码";

            String connectionUrl = "jdbc:sqlserver://" + serverName + ":1433;" + "databaseName=" + databaseName + ";user=" + username + ";password=" + password;

            connection = DriverManager.getConnection(connectionUrl);

            // 查询用户表
            Statement statement = connection.createStatement();
            String query = "SELECT username, email FROM users";
            ResultSet resultSet = statement.executeQuery(query);

            System.out.println("用户列表:");
            while (resultSet.next()) {
                String username = resultSet.getString("username");
                String email = resultSet.getString("email");
                System.out.println("Username: " + username + ", Email: " + email);
            }

            resultSet.close();
            statement.close();

            // 插入数据
            String insertSQL = "INSERT INTO users (username, email) VALUES ('john_doe', '[email protected]')";
            Statement insertStatement = connection.createStatement();
            int rowsInserted = insertStatement.executeUpdate(insertSQL);
            if (rowsInserted > 0) {
                System.out.println("数据插入成功!");
            }
            insertStatement.close();

        } catch (SQLException e) {
            e.printStackTrace();
        } finally {
            try {
                if (connection != null) {
                    connection.close();
                }
            } catch (SQLException e) {
                e.printStackTrace();
            }
        }
    }
}

总结

通过本教程,您学习了如何使用 Java 语言连接到 SQL Server 数据库的基础知识。连接到数据库、执行操作并关闭连接是与数据库交互的关键步骤。SQL Server 是一种功能丰富的关系型数据库管理系统,适用于各种企业级应用程序。您可以根据您的应用程序需求扩展和修改这些示例代码,以实现更复杂的数据库操作。希望本