DM8 常见应用程序开发配置
c/c++开发
编译安装unixodbc
#解压源码包tar-xvunixODBC-2.3.12.tar.gz# 配置安装选项./configure --enable-gui=no#编译安装make&&makeinstall编辑 odbcinst.ini文件
[DM8 ODBC DRIVER]Description=ODBC DRIVER FOR DM8 Driver=/home/dmdba/dmdbms/bin/libdodbc.so编辑 odbc.ini文件
[dm8]
Description = DM ODBC DSN
Driver = DM8 ODBC DRIVER
SERVER = localhost
UID = SYSDBA
PWD = Dameng123
TCP_PORT = 5236
测试连接
python开发
前提
Linux环境需要gcc编译工具
编译安装python3
#下载开发工具及依赖项yuminstallgcc openssl-devel bzip2-devel libffi-devel zlib-devel-y#下载源码wgethttps://www.python.org/ftp/python/3.8.9/Python-3.8.9.tgz# 解压源码包tar-xfPython-3.8.9.tgz# 配置安装选项cdPython-3.8.9##--enable-optimizations 在gcc8.1.0以下版本会导致编译失败./configure--prefix=/usr/local/python3# 编译并安装make-j$(nproc)makeinstall编译安装 dmPython
python3 setup.pyinstall设置 LD_LIBRARY_PATH 环境变量
vi/root/.bash_profileexportLD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/dmdba/dmdbms/drivers/dpi/source/root/.bash_profile测试连接
importdmPython conn=dmPython.connect(user='SYSDBA',password='Dameng123',server='192.168.43.131',port=5236)cursor=conn.cursor()cursor.execute('select username from dba_users')values=cursor.fetchall()print(values)cursor.close()conn.close()Java开发
创建maven工程
导入DM驱动
测试连接
publicclassjdbc_conn{// 定义连接staticConnectioncon=null;// 定义 DM JDBC 驱动串staticStringcname="dm.jdbc.driver.DmDriver";// 定义 DM URL 连接串staticStringurl="jdbc:dm://192.168.43.131:5236";// 定义连接用户名staticStringuserid="SYSDBA";// 定义连接用户口令staticStringpwd="Dameng123";publicstaticvoidmain(String[]args){try{Class.forName(cname);con=DriverManager.getConnection(url,userid,pwd);con.setAutoCommit(true);System.out.println("[SUCCESS]conn database");}catch(Exceptione){System.out.println("[FAIL]conn database:"+e.getMessage());}}publicvoiddisConn(Connectioncon)throwsSQLException{if(con!=null){con.close();}}}Go开发
下载并安装go
#解压源码包tar-C/usr/local-xzfgo1.22.0.linux-amd64.tar.gz#配置环境变量exportPATH=$PATH:/usr/local/go/binexportGOPATH=$HOME/goexportPATH=$PATH:$GOPATH/binsource~/.bashrc#检查版本信息go version下载并安装git
yuminstallgityuminstallgit-svn git-email gitk解压并安装go驱动
unzipdm-go-driver.zipcp-rdm/ /usr/local/go/src/测试连接
vigodm.go go mod init godm goenv-wGOPROXY=https://goproxy.cn,direct go mod tidypackagemain// 引入相关包import("database/sql""fmt"_"dm")vardb*sql.DBvarerrerrorfuncmain(){driverName:="dm"dataSourceName:="dm://SYSDBA:Dameng123@localhost:5236"fmt.Println(1)ifdb,err=connect(driverName,dataSourceName);err!=nil{fmt.Println(err)return}iferr=disconnect();err!=nil{fmt.Println(err)return}}/* 创建数据库连接 */funcconnect(driverNamestring,dataSourceNamestring)(*sql.DB,error){vardb*sql.DBvarerrerrorifdb,err=sql.Open(driverName,dataSourceName);err!=nil{returnnil,err}iferr=db.Ping();err!=nil{returnnil,err}fmt.Printf("connect to \"%s\" succeed.\n",dataSourceName)returndb,nil}funcdisconnect()error{iferr:=db.Close();err!=nil{fmt.Printf("db close failed: %s.\n",err)returnerr}fmt.Println("disconnect succeed")returnnil}