1、JDBC接口

JDBC (Java Database Connectivity) 是 Java 应用程序与数据库的接口规范,旨在让各数据库开发商为 Java 程序员提供标准的数据库应用程序编程接口 (API)。JDBC 定义了一个跨数据库、跨平台的通用 SQL 数据库 API。

DM JDBC 数据库驱动程序是一个能够支持基本 SQL 功能的通用应用程序编程接口,支持一般的 SQL 数据库访问。通过 JDBC 驱动程序,用户可以在应用程序中实现对 DM 数据库的连接与访问,JDBC 驱动程序的主要功能包括:

  • 建立与 DM 数据库的连接。

  • 转接发送 SQL 语句到数据库。

  • 处理并返回语句执行结果。

2、开发环境搭建

软件版本
DM 数据库DM 8.0 及以上版本
JDKJDK 8
IDEA2018.3.4 x64

2.1、安装 DM 数据库

参考达梦单机数据库安装搭建_champion0521的博客-CSDN博客

2.2、安装 Java 开发工具包–JDK

双击安装包进行安装,安装步骤简单,点击【下一步】安装即可。本人安装目录为:D:\Develop\Java\jdk1.8.0_101,安装完成如下图所示:

 安装成功后需要配置 JDK 环境变量,即将 JDK 安装路径的 bin 路径复制到环境变量 path 里,如下图所示:

环境变量配置成功后,可使用 win+R 打开命令提示符,输入 java -version 命令,可以正常出现 JDK 版本号,即环境变量配置成功,如下图所示:

2.3、安装集成开发环境 IDEA

数据库连接

准备 DM-JDBC 驱动包

DM JDBC 驱动 jar 包在 DM 安装目录 /dmdbms/drivers/jdbc,如下图所示:

将其复制到项目的lib文件夹中,如图:

 在pom文件中导入依赖

<dependencies>
    <dependency>
        <groupId>com.dameng</groupId>
        <artifactId>dm-jdbc</artifactId>
        <version>1.8</version>
        <scope>system</scope>
        <systemPath>${project.basedir}/lib/DmJdbcDriver18.jar</systemPath>
    </dependency>
</dependencies>

3、数据库连接示例代码

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

public class Demo01 {

    static Connection con = null;
    static String cname = "dm.jdbc.driver.DmDriver";
    static String url = "jdbc:dm://localhost:5236";
    static String userid = "SYSDBA";
    static String pwd = "123456789";
    public static void main(String[] args) {
        try {
            Class.forName(cname);
            con = DriverManager.getConnection(url, userid, pwd);
            con.setAutoCommit(true);
            System.out.println("数据库连接成功");
        } catch (Exception e) {
            System.out.println("数据库连接失败:" + e.getMessage());
        }



    }
    public void disConn(Connection con) throws SQLException {
        if (con != null) {
            con.close();
        }
    }

}

 运行结果如图:

4、基础增删改查示例代码

import java.sql.*;

public class Demo03 {

    static String cname = "dm.jdbc.driver.DmDriver";
    static String url = "jdbc:dm://localhost:5236";
    static String userid = "SYSDBA";
    static String pwd = "123456789";
    static Connection con = null;
    static Statement state = null;
    static ResultSet rs = null;

    public static void main(String[] args) throws ClassNotFoundException, SQLException {
        try {
            //连接JDBC驱动程序
            System.out.println("Loading JDBC Driver...");
            Class.forName(cname);
            System.out.println("加载成功");
            //连接DM数据库
            System.out.println("Connecting to DM Server..");
            con = DriverManager.getConnection(url,userid,pwd);
            //通过连接对象创建java.sql.Statement对象
            state = con.createStatement();
            System.out.println("连接成功");

            System.out.println("-----------------------");

            //定义插入SQL语句
           // String sql_insert1 = "insert into emp(empid,empname,deptid)values(1,'ceshi',10)";
            //String sql_insert2 = "insert into emp(empid,empname,deptid)values(2,'test',10)";
            //state.execute(sql_insert1);
            //state.execute(sql_insert2);
            System.out.println("插入成功");

            //定义删除SQL语句
            String sql_del = "delete  from emp where empid = 2";
            boolean b = state.execute(sql_del);
            System.out.println("删除成功");

            //修改
            String sql_update = "update emp set"+" empname = 'test' where empname = 'ceshi';";
            state.executeUpdate(sql_update);
            System.out.println("更新成功");

            //定义查询 SQL
            String sql_selectAll = "select * from emp";
            //执行查询的 SQL 语句
            rs = state.executeQuery(sql_selectAll);
            displayResultSet(rs);


        }catch (ClassNotFoundException e){
            e.printStackTrace();

        }catch (SQLException e){
            e.printStackTrace();
        }finally {
            try {
                //rs.close();
                state.close();
                con.close();
            }catch (SQLException e){
                e.printStackTrace();
            }
        }
    }


    public static void displayResultSet(ResultSet rs) throws SQLException {
        while (rs.next()) {
            System.out.println(rs.getInt(1)+ "  " + rs.getString(2) + " " + rs.getInt(3));
        }
    }

}

运行结果如图:

更多资讯请上达梦技术社区了解: https://eco.dameng.com

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐