ODBC与JDBC连接DM7数据库

ODBC与JDBC连接DM7数据库,第1张

一、ODBC连接DM数据库

环境准备:

*** 作系统RedHat6.8
数据库版本DM7
必要组件版本unixODBC-2.3.9

##在linux环境中配置ODBC
1.解压缩包
tar -xf unixODBC-2.3.9.tar.gz
cd unixODBC-2.3.9
2.配置与编译ODBC
./configure --enable-gui=no
make
make install
3.查看odbc版本与配置文件路径
[root@localhost unixODBC-2.3.9]# odbc_config --version
2.3.9
[root@localhost unixODBC-2.3.9]# odbc_config --odbcini
/usr/local/etc/odbc.ini
[root@localhost unixODBC-2.3.9]# odbcinst -j
unixODBC 2.3.9
DRIVERS............: /usr/local/etc/odbcinst.ini
SYSTEM DATA SOURCES: /usr/local/etc/odbc.ini
FILE DATA SOURCES..: /usr/local/etc/ODBCDataSources
USER DATA SOURCES..: /root/.odbc.ini
SQLULEN Size.......: 8
SQLLEN Size........: 8
SQLSETPOSIROW Size.: 8
4.配置odbc.ini和odbcinst.ini文件
vi /usr/local/etc/odbc.ini
[dm]
Description = DM ODBC DSN
Driver = DM7 ODBC DRIVER
SERVER = localhost
UID = SYSDBA
PWD = SYSDBA
TCP_PORT = 5236

vi /usr/local/etc/odbcinst.ini
[DM7 ODBC DRIVER]
Description = ODBC DRIVER FOR DM7
Driver = /home/dmdba/dm/dmdbms/bin/libdodbc.so

5.修改配置文件权限
chmod 775 /usr/local/etc/odbcinst.ini
chmod 775 /usr/local/etc/odbc.ini

6.切换为dmdba用户做登入测试
[root@localhost unixODBC-2.3.9]# su - dmdba
[dmdba@localhost ~]$isql dm
+---------------------------------------+
| Connected!                            |
|                                       |
| sql-statement                         |
| help [tablename]                      |
| quit                                  |
|                                       |
+---------------------------------------+
SQL> select * from v$version
+---------------------------------------------------------------------------------+
| BANNER                                                                          |
+---------------------------------------------------------------------------------+
| DM Database Server x64 V7.6.1.112-Build(2021.12.24-154107-10036)SEC
           |
| DB Version: 0x7000a                                                             |
+---------------------------------------------------------------------------------+
SQLRowCount returns 2
2 rows fetched
SQL> quit

二、JDBC连接DM数据库

数据库版本DM7
JDKjdk-17_windows-x64_bin.exe
测试工具IDEA
达梦JDBC驱动包Dm7JdbcDriver17.jar
  1. 安装JAVA开发工具包-JDK

在官网下载对应的安装包,我使用的是jdk-17_windows-x64_bin.exe,安装路径是D:\jdk\jdk-17.0.2。

安装成功后配置JDK环境变量,即将JDK安装路径的bin路径复制到环境变量path中:

环境变量配置成功后,可以使用win+R打开命令提示符,输入java -version命令。可以正常出现版本信息,即控制变量配置成功。

2.在idea工具中添加jdbc驱动包

驱动包在/home/dmdba/dm/dmdbms/drivers/jdbc路径下

File>>Project Structure>>Libraies>>java

3.连接测试

import java.sql.DriverManager;

import java.sql.Connection;

class Connect{

    static Connection conn=null;

    static String name="dm.jdbc.driver.DmDriver";

    static String url="jdbc:dm://dmconn?dmconn=(192.168.255.130:5236)&LOGIN_MODE=(1)";

    static String user="SYSDBA";

    static String password="SYSDBA";

    public static void main(String[] args) {

        try{

            Class.forName(name);

            conn= DriverManager.getConnection(url,user,password);

            conn.setAutoCommit(true);

            System.out.println("数据库连接成功"+url);

        }catch(Exception e){

            System.out.println("error");

        }

    }

}

4.也可以用idea自带的工具连接达梦数据库

打开driver,添加驱动

取名,并添加本地达梦JDBC驱动包

选择达梦JDBC驱动包

添加完后可以在class内选择DM的驱动包

输入用户账户密码,连接串,连接测试

三、后记

启动isql时如果有如下错误

[01000][unixODBC][Driver Manager]Can't open lib '/home/dmdba/dm/dmdbms/bin' : file not found
[ISQL]ERROR: Could not SQLConnect

说明odbcinst.ini文件中的Driver路径有问题,更改为正确路径即可。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/720049.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-04-25
下一篇 2022-04-25

发表评论

登录后才能评论

评论列表(0条)

保存