Java进行数据库连接及操作

package xyz.lightly.dragform;
 
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
 
/**
 * 需要引入的gradle依赖
 * mysql       compile group: 'mysql', name: 'mysql-connector-java', version: '8.0.16'
 * sql server  compile group: 'com.microsoft.sqlserver', name: 'mssql-jdbc', version: '8.2.2.jre11'
 */
 
public class ConnectToDatabase {
    // JDBC驱动引擎,这里使用的是SQL Server的JDBC
    // MySQL的JDBC: com.mysql.cj.jdbc.Driver
    private static final String DRIVER_NAME = "com.microsoft.sqlserver.jdbc.SQLServerDriver";
    // 数据库访问链接。这里为SQL Server的数据库访问格式
    // MySQL的数据库访问链接(需要加上海时区,否则报错): "jdbc:mysql://localhost:3306/cas?useSSL=false&serverTimezone=CTT"
    private static String dbURL = "jdbc:sqlserver://192.168.2.48;DatabaseName=LZMISPM";
    // 数据库用户名
    private static String dbUser = "sa";
    // 数据库密码
    private static String dbPass = "sa";
 
    /**
     * 进行数据库的SQL操作
     */
    public void doSqlOperation() {
        Connection conn = null;
        Statement stmt = null;
        ResultSet rs = null;
        try {
            // 将JDBC进行装载
            Class.forName(DRIVER_NAME);
            // 进行数据库连接
            conn = DriverManager.getConnection(dbURL, dbUser, dbPass);
            // 创建数据库SQL操作对象
            stmt = conn.createStatement();
            // 编写SQL语句。SQL Server中的数据库需要写dbo.表名
            // SQL语句不能加分号,否则报错
            String sql = "select count(ID) from dbo.PM_ProjectA where sync = 1";
            // 查询语句使用executionQuery方法操作。返回ResultSet对象
            rs = stmt.executeQuery(sql);
            // 使用ResultSet对象的next方法查看是否还有下一行数据
            if (rs.next()) {
                int newDataRows = rs.getInt(1); // 获取int类型的数据
                System.out.println(newDataRows);
            }
 
            // 增删改使用executeUpdate方法操作,返回影响了几行数据。如果为0,则说明没有进行任何数据修改。
            sql = "update dbo.PM_ProjectA set sync = 1 where ID = 0";
            int execResult = stmt.executeUpdate(sql);
            System.out.println(execResult);
 
        } catch (SQLException e) {
            e.printStackTrace(); 
        } catch (Exception e) {
            e.printStackTrace(); 
        } finally {
            try {
                rs.close();
                stmt.close();
                conn.close();
            } catch (SQLException e) {
                e.printStackTrace();
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
    }
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值