通过Qt连接OpenGauss数据库的详细教程
<div id="navCategory"><h5 class="catalogue">目录</h5><ul class="first_class_ul"><li>1 安装软件</li><li>
2 准备连接环境<ul class="second_class_ul"><li>
2.1 修改数据库的pg_hba.conf文件</li><li>
2.2 使用omm用户登陆数据库,给dbuser用户授权,并退出数据库</li><li>
2.3 修改数据库监听地址</li></ul></li><li>
3 windows下配置odbc数据源<ul class="second_class_ul"><li>
3.1下载客户端gaussdb(for opengauss)驱动程序并进行安装</li><li>
3.2 打开驱动管理器</li><li>
3.3 配置数据源</li><li>
3.4 验证并保存设置</li></ul></li><li>
3 qt安装<ul class="second_class_ul"></ul></li><li>
4 创建一个qt工程<ul class="second_class_ul"></ul></li><li>
总结<ul class="second_class_ul"></ul></li></ul></div><div id="navcategory">
<h5 class="catalogue">
目录</h5>
<ul class="first_class_ul">
<li>
1 安装软件
</li>
<li>
2 准备连接环境
<ul class="second_class_ul">
<li>
2.1 修改数据库的pg_hba.conf文件
</li>
<li>
2.2 使用omm用户登陆数据库,给dbuser用户授权,并退出数据库
</li>
<li>
2.3 修改数据库监听地址
</li>
</ul>
</li>
<li>
3 windows下配置odbc数据源
<ul class="second_class_ul">
<li>
3.1下载客户端gaussdb(for opengauss)驱动程序并进行安装
</li>
<li>
3.2 打开驱动管理器
</li>
<li>
3.3 配置数据源
</li>
<li>
3.4 验证并保存设置
</li>
</ul>
</li>
<li>
3 qt安装
<ul class="second_class_ul"></ul>
</li>
<li>
4 创建一个qt工程
<ul class="second_class_ul"></ul>
</li>
<li>
总结
<ul class="second_class_ul"></ul>
</li>
</ul>
</div>
<p class="maodian">
</p>
<p class="maodian"></p><h2>
1 安装软件</h2>
<ul>
<li>
qt-opensource-windows-x86-5.14.2.exe(之前的版本可能不行,安装过程中必须包含mingw64)</li>
<li>
opengauss</li>
<li>
odbc</li>
</ul>
<p class="maodian">
</p>
<p class="maodian"></p><h2>
2 准备连接环境</h2>
<p>
在opengauss所在的root环境下执行下列步骤</p>
<p class="maodian">
</p>
<p class="maodian"></p><h3>
2.1 修改数据库的pg_hba.conf文件</h3>
<p>
在gs_home中查找pg_hba.conf文件,本实验中数据库gs_home设置的为/gaussdb/data/db1,实际操作中gs_home地址可以查看安装时的配置文件:< param name=“datanode1” value="/gaussdb/data/db1" />。</p>
<div class="jb51code">
<div>
<div class="syntaxhighlightersql" id="highlighter_512602">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
<div class="line number2 index1 alt1">
2</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="sql plain">cd /gaussdb/data/db1</code>
</div>
<div class="line number2 index1 alt1">
<code class="sql plain">vi pg_hba.conf</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
</div>
<p>
输入“:90”找到对应位置,然后输入“i”切换到insert模式,将“host all all 192.168.0.132/32 trust”修改为“host all all 192.168.0.132/32 sha256”。</p>
<p>
将以下内容添加进pg_hba.conf文件,完成后按下“esc”键,退出insert模式,输入“:wq”后回车保存。</p>
<div class="jb51code">
<div>
<div class="syntaxhighlightersql" id="highlighter_45993">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
<div class="line number2 index1 alt1">
2</div>
<div class="line number3 index2 alt2">
3</div>
<div class="line number4 index3 alt1">
4</div>
<div class="line number5 index4 alt2">
5</div>
<div class="line number6 index5 alt1">
6</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="sql plain"># ipv4 </code><code class="sql keyword">local</code> <code class="sql plain">connections:</code>
</div>
<div class="line number2 index1 alt1">
<code class="sql plain">host </code><code class="sql color1">all</code> <code class="sql color1">all</code> <code class="sql plain">127.0.0.1/32 trust</code>
</div>
<div class="line number3 index2 alt2">
<code class="sql plain">host </code><code class="sql color1">all</code> <code class="sql color1">all</code> <code class="sql plain">192.168.0.19/32 sha256</code>
</div>
<div class="line number4 index3 alt1">
<code class="sql plain">host </code><code class="sql color1">all</code> <code class="sql color1">all</code> <code class="sql plain">0.0.0.0/0 sha256</code>
</div>
<div class="line number5 index4 alt2">
<code class="sql plain"># ipv6 </code><code class="sql keyword">local</code> <code class="sql plain">connections:</code>
</div>
<div class="line number6 index5 alt1">
<code class="sql plain">host </code><code class="sql color1">all</code> <code class="sql color1">all</code> <code class="sql plain">::1/128 trust</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
</div>
<p>
使用omm用户登陆,使用gs_ctl将策略生效。</p>
<div class="jb51code">
<div>
<div class="syntaxhighlightersql" id="highlighter_645646">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
<div class="line number2 index1 alt1">
2</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="sql plain">su - omm</code>
</div>
<div class="line number2 index1 alt1">
<code class="sql plain">gs_ctl reload -d /gaussdb/data/db1/</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
</div>
<p>
返回结果为:</p>
<blockquote>
<p>
[]: gs_ctl reload ,datadir is -d "/gaussdb/data/db1"<br>
server signaled</p>
</blockquote>
<p>
注:如果之前没有启动过数据库,返回结果如下,继续操作即可:</p>
<blockquote>
<p>
[]: gs_ctl reload ,datadir is /gaussdb/data/db1<br>
[]: pid file "/gaussdb/data/db1/postmaster.pid" does not exist<br>
[]: is server running?</p>
</blockquote>
<p class="maodian">
</p>
<p class="maodian"></p><h3>
2.2 使用omm用户登陆数据库,给dbuser用户授权,并退出数据库</h3>
<div class="jb51code">
<div>
<div class="syntaxhighlightersql" id="highlighter_859228">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
<div class="line number2 index1 alt1">
2</div>
<div class="line number3 index2 alt2">
3</div>
<div class="line number4 index3 alt1">
4</div>
<div class="line number5 index4 alt2">
5</div>
<div class="line number6 index5 alt1">
6</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="sql plain">gsql -d postgres -p 26000 -r</code>
</div>
<div class="line number2 index1 alt1">
</div>
<div class="line number3 index2 alt2">
<code class="sql plain">postgres=# </code><code class="sql keyword">alter</code> <code class="sql plain">role dbuser sysadmin;</code>
</div>
<div class="line number4 index3 alt1">
<code class="sql keyword">alter</code> <code class="sql plain">role</code>
</div>
<div class="line number5 index4 alt2">
</div>
<div class="line number6 index5 alt1">
<code class="sql plain">postgres=# \q</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
</div>
<p class="maodian">
</p>
<p class="maodian"></p><h3>
2.3 修改数据库监听地址</h3>
<p>
在gs_home中,本实验中数据库gs_home设置的为/gaussdb/data/db1。</p>
<div class="jb51code">
<div>
<div class="syntaxhighlightersql" id="highlighter_823633">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
<div class="line number2 index1 alt1">
2</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="sql plain">cd /gaussdb/data/db1</code>
</div>
<div class="line number2 index1 alt1">
<code class="sql plain">vi postgresql.conf</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
</div>
<p>
输入“:60”找到对应位置,然后输入“i”切换到insert模式,将listen_addresses的值修改成为*,修改后按下“esc”键,退出insert模式,输入“:wq”后回车保存。</p>
<div class="jb51code">
<div>
<div class="syntaxhighlightersql" id="highlighter_490051">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
<div class="line number2 index1 alt1">
2</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="sql plain">#listen_addresses = </code><code class="sql string">'192.168.0.19'</code> <code class="sql plain"># what ip address(es) </code><code class="sql keyword">to</code> <code class="sql plain">listen </code><code class="sql keyword">on</code><code class="sql plain">;</code>
</div>
<div class="line number2 index1 alt1">
<code class="sql plain">listen_addresses = </code><code class="sql string">'*'</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
</div>
<p>
修改完成后重启数据库生效(-d后面的数据库默认路径,需要根据实际情况进行修改)。</p>
<div class="jb51code">
<div>
<div class="syntaxhighlightersql" id="highlighter_47599">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="sql plain">gs_ctl restart -d /gaussdb/data/db1/</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
</div>
<p class="maodian">
</p>
<p class="maodian"></p><h2>
3 windows下配置odbc数据源</h2>
<p>
windows操作系统自带odbc数据源管理器,无需用户手动安装管理器便可直接进行配置。</p>
<p class="maodian">
</p>
<p class="maodian"></p><h3>
3.1下载客户端gaussdb(for opengauss)驱动程序并进行安装</h3>
<p>
下载地址:gaussdb驱动程序<br>
在本地(例如d:/download)下载zip文件后进行解压缩,解压缩后文件如下。<br><img title="通过Qt连接OpenGauss数据库的详细教程" alt="通过Qt连接OpenGauss数据库的详细教程" src="https://zhuji.jb51.net/uploads/img/202305/d8318fd93970464c3220082b3c457a5e.jpg"></p>
<p>
由于本实验opengauss安装在ecs(openeuler arm)上,所以进入euler2.8_arm_64文件夹,显示如下:<br><img title="通过Qt连接OpenGauss数据库的详细教程" alt="通过Qt连接OpenGauss数据库的详细教程" src="https://zhuji.jb51.net/uploads/img/202305/407acc588ff0b0fdc2909fc2796d675b.jpg"></p>
<p>
解压缩gaussdb-kernel-v500r001c10-windows-odbc.tar.gz文件,显示如下:</p>
<p>
<img title="通过Qt连接OpenGauss数据库的详细教程" alt="通过Qt连接OpenGauss数据库的详细教程" src="https://zhuji.jb51.net/uploads/img/202305/c3ebfc42b1223cea08a33748e14d8c1f.jpg"></p>
<p>
点击psqlodbc_x86.msi进行安装:</p>
<p>
<img title="通过Qt连接OpenGauss数据库的详细教程" alt="通过Qt连接OpenGauss数据库的详细教程" src="https://zhuji.jb51.net/uploads/img/202305/00c23d76c6be0e029b813f42e0de8327.jpg"></p>
<p>
默认设置,直到安装完毕。</p>
<p class="maodian">
</p>
<p class="maodian"></p><h3>
3.2 打开驱动管理器</h3>
<p>
在配置数据源时,请使用对应的驱动管理器(假设操作系统安装盘符为c盘,如果是其他盘符,请对路径做相应修改):<br>
64位操作系统上进行64位程序开发,安装64位驱动程序后,使用64位的驱动管理器:c:\windows\system32\odbcad32.exe 或者直接使用“控制面板 > 管理工具 > odbc 数据源(64 位)。</p>
<p>
<img title="通过Qt连接OpenGauss数据库的详细教程" alt="通过Qt连接OpenGauss数据库的详细教程" src="https://zhuji.jb51.net/uploads/img/202305/d1095a10d4092dec5923e5cd210d30b2.jpg"></p>
<p class="maodian">
</p>
<p class="maodian"></p><h3>
3.3 配置数据源</h3>
<p>
在打开的驱动管理器上,选择“用户dsn > 添加 > postgresql unicode(x64)”,然后进行配置:</p>
<p>
<img title="通过Qt连接OpenGauss数据库的详细教程" alt="通过Qt连接OpenGauss数据库的详细教程" src="https://zhuji.jb51.net/uploads/img/202305/1268d5ca39f45257fe58de113c788b97.jpg"><img title="通过Qt连接OpenGauss数据库的详细教程" alt="通过Qt连接OpenGauss数据库的详细教程" src="https://zhuji.jb51.net/uploads/img/202305/4283595d58ca1543be4532171e5cfb1e.jpg"><br><img title="通过Qt连接OpenGauss数据库的详细教程" alt="通过Qt连接OpenGauss数据库的详细教程" src="https://zhuji.jb51.net/uploads/img/202305/8c1939f60741a6f67d1475cbfee0beed.jpg"></p>
<p>
data source:opengauss (数据源名称,可以自定义)。<br>
database:postgres (<strong>需要连接的datebase名称</strong>)。<br>
server:opengauss数据库服务器的公网ip,请根据实际情况填写。<br>
pot:26000 (端口号)。<br>
user name:dbuser (连接数据库的用户名,不能使用omm用户,需要在数据库中创建)<br>
password:dbuser用户的密码,请根据实际情况填写。</p>
<p class="maodian">
</p>
<p class="maodian"></p><h3>
3.4 验证并保存设置</h3>
<p>
点击test,显示 connection successful 表示设置成功:</p>
<p>
<img title="通过Qt连接OpenGauss数据库的详细教程" alt="通过Qt连接OpenGauss数据库的详细教程" src="https://zhuji.jb51.net/uploads/img/202305/6376943eced18aab2efef74e816dab33.jpg"></p>
<p>
点击保存:</p>
<p>
<img title="通过Qt连接OpenGauss数据库的详细教程" alt="通过Qt连接OpenGauss数据库的详细教程" src="https://zhuji.jb51.net/uploads/img/202305/3afbbf1a4694af9f908c6b704a70857f.jpg"><br><img title="通过Qt连接OpenGauss数据库的详细教程" alt="通过Qt连接OpenGauss数据库的详细教程" src="https://zhuji.jb51.net/uploads/img/202305/a2c34444407fddba7713379784047258.jpg"></p>
<p>
配置成功!</p>
<p class="maodian">
</p>
<p class="maodian"></p><h2>
3 qt安装</h2>
<p>
下载好 qt-opensource-windows-x86-5.14.2.exe后,无脑next就行。但有一点需要注意。打勾的必须选上!打勾的必须选上!打勾的必须选上!</p>
<p>
<img title="通过Qt连接OpenGauss数据库的详细教程" alt="通过Qt连接OpenGauss数据库的详细教程" src="https://zhuji.jb51.net/uploads/img/202305/f0e1d68c15ae75bc6d5089f1a4255628.jpg"></p>
<p class="maodian">
</p>
<p class="maodian"></p><h2>
4 创建一个qt工程</h2>
<p>
不会创建的童鞋可以参考qt创建工程教程。<br><strong>注意!kit必须选64bit的</strong></p>
<p>
<img title="通过Qt连接OpenGauss数据库的详细教程" alt="通过Qt连接OpenGauss数据库的详细教程" src="https://zhuji.jb51.net/uploads/img/202305/5a94d33dc6ae6ed5b2f83a5daac8160f.jpg"></p>
<p>
为了使用sql,还必须在<code>xxx.pro</code>下面添加:</p>
<blockquote>
<p>
qt += sql</p>
</blockquote>
<p>
接下来就可以愉快的测试了!<br>
修改<code>main.cpp</code>文件,代码如下:</p>
<div class="jb51code">
<div>
<div class="syntaxhighlightersql" id="highlighter_672113">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
<div class="line number2 index1 alt1">
2</div>
<div class="line number3 index2 alt2">
3</div>
<div class="line number4 index3 alt1">
4</div>
<div class="line number5 index4 alt2">
5</div>
<div class="line number6 index5 alt1">
6</div>
<div class="line number7 index6 alt2">
7</div>
<div class="line number8 index7 alt1">
8</div>
<div class="line number9 index8 alt2">
9</div>
<div class="line number10 index9 alt1">
10</div>
<div class="line number11 index10 alt2">
11</div>
<div class="line number12 index11 alt1">
12</div>
<div class="line number13 index12 alt2">
13</div>
<div class="line number14 index13 alt1">
14</div>
<div class="line number15 index14 alt2">
15</div>
<div class="line number16 index15 alt1">
16</div>
<div class="line number17 index16 alt2">
17</div>
<div class="line number18 index17 alt1">
18</div>
<div class="line number19 index18 alt2">
19</div>
<div class="line number20 index19 alt1">
20</div>
<div class="line number21 index20 alt2">
21</div>
<div class="line number22 index21 alt1">
22</div>
<div class="line number23 index22 alt2">
23</div>
<div class="line number24 index23 alt1">
24</div>
<div class="line number25 index24 alt2">
25</div>
<div class="line number26 index25 alt1">
26</div>
<div class="line number27 index26 alt2">
27</div>
<div class="line number28 index27 alt1">
28</div>
<div class="line number29 index28 alt2">
29</div>
<div class="line number30 index29 alt1">
30</div>
<div class="line number31 index30 alt2">
31</div>
<div class="line number32 index31 alt1">
32</div>
<div class="line number33 index32 alt2">
33</div>
<div class="line number34 index33 alt1">
34</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="sql plain">#include </code><code class="sql string">"gsql.h"</code>
</div>
<div class="line number2 index1 alt1">
<code class="sql plain">#include <qsqldatabase></code>
</div>
<div class="line number3 index2 alt2">
<code class="sql plain">#include <qstringlist></code>
</div>
<div class="line number4 index3 alt1">
<code class="sql plain">#include <qdebug></code>
</div>
<div class="line number5 index4 alt2">
<code class="sql plain">#include <qmessagebox></code>
</div>
<div class="line number6 index5 alt1">
<code class="sql plain">#include <qtsql></code>
</div>
<div class="line number7 index6 alt2">
<code class="sql plain">#include <qsqlquery></code>
</div>
<div class="line number8 index7 alt1">
<code class="sql plain">#include <qapplication></code>
</div>
<div class="line number9 index8 alt2">
<code class="sql plain">#include <iostream></code>
</div>
<div class="line number10 index9 alt1">
<code class="sql plain">using namespace std;</code>
</div>
<div class="line number11 index10 alt2">
</div>
<div class="line number12 index11 alt1">
<code class="sql keyword">int</code> <code class="sql plain">main(</code><code class="sql keyword">int</code> <code class="sql plain">argc, </code><code class="sql keyword">char</code> <code class="sql plain">*argv[])</code>
</div>
<div class="line number13 index12 alt2">
<code class="sql plain">{</code>
</div>
<div class="line number14 index13 alt1">
<code class="sql spaces"> </code><code class="sql plain">qapplication a(argc, argv);</code>
</div>
<div class="line number15 index14 alt2">
<code class="sql spaces"> </code><code class="sql plain">gsql w;</code>
</div>
<div class="line number16 index15 alt1">
<code class="sql spaces"> </code><code class="sql plain">w.show();</code>
</div>
<div class="line number17 index16 alt2">
<code class="sql spaces"> </code><code class="sql plain">qsqldatabase db = qsqldatabase::adddatabase(</code><code class="sql string">"qodbc"</code><code class="sql plain">);</code>
</div>
<div class="line number18 index17 alt1">
<code class="sql spaces"> </code><code class="sql plain">qstring dsn = qstring::fromlocal8bit(</code><code class="sql string">"xxxx"</code><code class="sql plain">);//你在2.3中配置的data source,例如opengauss</code>
</div>
<div class="line number19 index18 alt2">
<code class="sql spaces"> </code><code class="sql plain">qdebug()<<</code><code class="sql string">"odbc connect?"</code><code class="sql plain"><<db.isvalid();</code>
</div>
<div class="line number20 index19 alt1">
<code class="sql spaces"> </code><code class="sql plain">db.sethostname(</code><code class="sql string">"xxxx.xxxx.xxxx.xxxx"</code><code class="sql plain">);//你的ip地址</code>
</div>
<div class="line number21 index20 alt2">
<code class="sql spaces"> </code><code class="sql plain">db.setdatabasename(dsn);</code>
</div>
<div class="line number22 index21 alt1">
<code class="sql spaces"> </code><code class="sql plain">db.setusername(</code><code class="sql string">"xxx"</code><code class="sql plain">); //用户名</code>
</div>
<div class="line number23 index22 alt2">
<code class="sql spaces"> </code><code class="sql plain">db.setpassword(</code><code class="sql string">"xxxx"</code><code class="sql plain">);//密码</code>
</div>
<div class="line number24 index23 alt1">
<code class="sql spaces"> </code><code class="sql plain">db.setport(26000); //opengauss端口号为26000</code>
</div>
<div class="line number25 index24 alt2">
<code class="sql spaces"> </code><code class="sql plain">if(!db.</code><code class="sql keyword">open</code><code class="sql plain">())</code>
</div>
<div class="line number26 index25 alt1">
<code class="sql spaces"> </code><code class="sql plain">{</code>
</div>
<div class="line number27 index26 alt2">
<code class="sql spaces"> </code><code class="sql plain">qdebug()<<db.lasterror().text();</code>
</div>
<div class="line number28 index27 alt1">
<code class="sql spaces"> </code><code class="sql plain">qmessagebox::critical(0, qobject::tr(</code><code class="sql string">"database error"</code><code class="sql plain">), db.lasterror().text());</code>
</div>
<div class="line number29 index28 alt2">
<code class="sql spaces"> </code><code class="sql keyword">return</code><code class="sql plain">;</code>
</div>
<div class="line number30 index29 alt1">
<code class="sql spaces"> </code><code class="sql plain">}</code>
</div>
<div class="line number31 index30 alt2">
<code class="sql spaces"> </code><code class="sql keyword">else</code>
</div>
<div class="line number32 index31 alt1">
<code class="sql spaces"> </code><code class="sql plain">qdebug()<<</code><code class="sql string">"database open success!"</code><code class="sql plain">;</code>
</div>
<div class="line number33 index32 alt2">
<code class="sql spaces"> </code><code class="sql keyword">return</code> <code class="sql plain">a.</code><code class="sql keyword">exec</code><code class="sql plain">();</code>
</div>
<div class="line number34 index33 alt1">
<code class="sql plain">}</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
</div>
<p>
显示结果如下,就说明连接成功。否则,会弹出报错提示。</p>
<p>
<img title="通过Qt连接OpenGauss数据库的详细教程" alt="通过Qt连接OpenGauss数据库的详细教程" src="https://zhuji.jb51.net/uploads/img/202305/f6ade88db676488e2fae7be0953a963c.jpg"></p>
<p class="maodian">
</p>
<p class="maodian"></p><h2>
总结</h2>
<p>
如果不成功,可能的原因:</p>
<ol>
<li>
qt 的mingw选的不是64位的</li>
<li>
odbc没有按照要求配置</li>
</ol>
<p>
以上就是通过qt连接opengauss数据库的详细教程的详细内容,更多关于qt连接opengauss数据库的资料请关注其它相关文章!</p>
<p>
原文链接:https://blog.csdn.net/weixin_43894075/article/details/117928718</p>
頁:
[1]