一,环境描述
二,驱动程序的安装
2.1安装Dameng Client
2.2安装unixODBC
2.3 unixODBC配置
2.4使用QODBC在QT中访问Damon
/div >
操作系统:中标了麒麟桌面版。以下使用Linux代替。
场景:在Linux上安装Dameng客户端,并使用QTcreater + ODBC访问其他服务器上的Dameng数据库。
将下载的Dameng安装包上传到linux;
解压缩安装包;
输入安装软件包,找到DMInstall.bin,修改权限chmod 755 https://blog.csdn.net/qfl_sdu/article/details/DMInstall.bin
执行DMInstall.bin以安装客户端;
在模式选择阶段,选择”客户端”,根据需要进行其他设置,只需进入下一步;
完成安装。
UnixODBC可能已在某些系统中安装,您可以在终端中输入:odbcinst-j以查看安装信息,如果出现以下内容,则表明它已经安装:
unixODBC 2.3.1
驱动程序…:/usr/local/etc/odbcinst.ini(路径可能不同,例如/etc/odbcinst.ini)
系统数据源:/usr/local/etc/odbc.ini
文件数据源…:/usr/local/etc/ODBCDataSources
用户数据源…:/root/.odbc.ini
SQLULEN大小…:8
SQLLEN大小…:8
SQLSETPOSIROW大小。:8
如果尚未安装,则需要下载unixODBC-2.3.1.tar.gz进行编译和安装,安装方法如下:
tar-zxvf unixODBC-2.3.1.tar.gz
cd unixODBC-2.3.1
https://blog.csdn.net/qfl_sdu/article/details/configure
制作
进行安装
您需要配置两个文件odbcinst.ini和odbc.ini。有关这两个文件的位置,请参见2.2中的显示信息。
1配置odbcinst.ini
在odbcinst.ini文件中添加以下内容
[DM7]
说明= dm odbc
驱动程序=/opt/dmdbms/bin/libdodbc.so(该路径根据客户端安装路径进行调整,默认为该路径)
2配置odbc.ini
添加以下内容:
[dm]
说明= dm7 dsn
驱动程序= DM7
SERVER = 192.168.3.222 —数据库服务器的IP地址
UID =用户名数据库实例用户名
PWD =密码-数据库实例密码
TCP_PORT = 5236 —数据库端口号,默认为5236
3个测试
配置完成后,在终端中输入:isql dm以测试其是否可以正常连接
[root @ localhost opt]#isql dm
±————————————–+
|连接的! |
| |
| sql语句|
|帮助[表名] |
|退出
| |
±————————————–+
SQL \选择1;
±———–+
| 1 |
±———–+
| 1 |
±———–+
SQLRowCount返回1
已获取1行
SQL \
将sql模块添加到pro文件并添加以下内容:
QT + = sql
在需要使用odbc的位置添加头文件
#include \ lt; QSqlDatabase \
#include \ lt; QSqlQuery
示例
QSqlDatabase db = QSqlDatabase :: addDatabase(” QODBC”);
db.setDatabaseName(” DM”);//请注意,它是DM,而不是DM7
db.setPort(5236);
db.setHostName(” 192.168.3.222″);//数据库服务器IP
db.setUserName(”用户名”);//数据库用户名
db.setPassword(” password”);//数据库密码
//连接到数据库
如果(db.open())
{
qDebug()\ lt; \ lt; “数据库连接成功”;
QString sql =” select * from” mod”。测试””;//mod是模式名称,test是表名称
QSqlQuery查询(sql);
while(query.next())
{
//逐列获取数据
QString col1 = query.value(0).toString();
QString col2 = query.value(1).toString();
int col3 = query.value(2).toInt();
}
db.close();//关闭连接
}其他
{
qDebug()\ lt; \ lt; “数据库连接失败”;
}
以上内容,欢迎交流学习。