QT动态创建ODBC MySQL DSN数据源

用QT动态创建ODBC MySQL DSN数据源的步骤如下:

1、在注册表中\HKEY_CURRENT_USER\SOFTWARE\ODBC\ODBC.INI\ODBC Data Sources中创建数据源名称,字符串值设置为MySQL ODBC驱动的名称,比如TestMySQL-->"MySQL ODBC 8.0 ANSI Driver",如下图:

2、在\HKEY_CURRENT_USER\SOFTWARE\ODBC\ODBC.INI\中创建名为TestMySQL项,在项中新建如下图的字符串值:

主要创建动态DSN的源代码如下:

    QSettings *regDataSrc=new QSettings("HKEY_CURRENT_USER\\SOFTWARE\\ODBC\\ODBC.INI\\ODBC Data Sources", QSettings::NativeFormat);
    regDataSrc->setValue(ui->lEditDSN_Name->text(), "MySQL ODBC 8.0 ANSI Driver");//创建数据源
    delete regDataSrc;
    regDataSrc = nullptr;

    //配置MySQL DSN
    QString Key= QString("HKEY_CURRENT_USER\\SOFTWARE\\ODBC\\ODBC.INI\\%1").arg(ui->lEditDSN_Name->text());
    qDebug()<<Key;
    QSettings *regConfigDSN=new QSettings(Key, QSettings::NativeFormat);
    regConfigDSN->setValue(".", "");
    regConfigDSN->setValue("DESCRIPTION", ui->lEditDSN_Description->text());//写描述项
    QSettings *regMySQLDriverPath = new QSettings("HKEY_LOCAL_MACHINE\\SOFTWARE\\ODBC\\ODBCINST.INI\\MySQL ODBC 8.0 ANSI Driver", QSettings::NativeFormat);
    QString MySQLDrvPath = regMySQLDriverPath->value("Driver").toString();
    regConfigDSN->setValue("Driver", MySQLDrvPath/*"D:\\Program Files\\MySQL\\Connector ODBC 8.0\\myodbc8a.dll"*/);//MySQL驱动程序路径
    regConfigDSN->setValue("SERVER", ui->lEdit_MySQL_IP->text());//MySQL服务器地址
    regConfigDSN->setValue("PORT", ui->lEdit_MySQL_Port->text());//MySQL服务器端口号
    regConfigDSN->setValue("UID", ui->lEdit_MySQL_UID->text());//用户名
    regConfigDSN->setValue("PWD", ui->lEdit_MySQ_PWD->text());//密码
    delete regConfigDSN;
    regConfigDSN = nullptr;
    delete regMySQLDriverPath;
    regMySQLDriverPath = nullptr;

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值