当前位置: 首页 > news >正文

网站推广公司就去柚米管理人员课程培训

网站推广公司就去柚米,管理人员课程培训,青海玉树网站建设,网站页面素材QT学习笔记-QT访问各种关系数据库笔记汇总 1、QT访问Oracle数据库2、QT访问SQLServer数据库3、QT访问MySQL数据库4、QT访问PostgreSQL数据库5、QT访问Access数据库6、QT多线程中访问数据库的要点 在使用QT进行应用开发过程中,不可避免的会涉及到访问关系数据库&…

QT学习笔记-QT访问各种关系数据库笔记汇总

  • 1、QT访问Oracle数据库
  • 2、QT访问SQLServer数据库
  • 3、QT访问MySQL数据库
  • 4、QT访问PostgreSQL数据库
  • 5、QT访问Access数据库
  • 6、QT多线程中访问数据库的要点

在使用QT进行应用开发过程中,不可避免的会涉及到访问关系数据库,为了方便后期查阅笔记,在本文进行一下汇总。

1、QT访问Oracle数据库

1.1、关于QT访问Oracle数据库的驱动编译请参阅
1.1.1 《QT学习笔记-QT安装oracle oci驱动》
1.1.2 《QT学习笔记-oracle oci数据库驱动交叉编译并移植到ARM开发板》
1.2、关键步骤:
1.2.1 配置oracleclient的环境变量LD_LIBRARY_PATH,或者直接在代码中通过QLibrary加载依赖库
1.2.2 参考代码

void Widget::on_btnDbTest_clicked()
{
#ifdef Q_OS_WINQLibrary *oci_lib = new QLibrary("D:/oracleinstantclient_19_19/oci.dll");oci_lib->load();if (!oci_lib->isLoaded()){qDebug() << "oracle oci动态库加载失败!";return;}
#elseQLibrary *oci_lib = new QLibrary("/usr/lib/oracleclient/instantclient_19_19/libclntsh.so");bool loadresult = oci_lib->load();qDebug() << "oracle oci动态库load result is " << loadresult;if (!loadresult){qDebug() << oci_lib->errorString();}if (!oci_lib->isLoaded()){qDebug() << "oracle oci动态库libclntsh.so加载失败!";return;}
#endif//以下代码测试访问Oracle数据QSqlDatabase  db = QSqlDatabase::addDatabase("QOCI");db.setHostName("xxx.xxx.xxx.xxx");		//数据库服务器的ipdb.setPort(1521);						//数据库服务器的端口号db.setDatabaseName("orcl");    			//此处写你数据库的实例名称db.setUserName("oracle");				//写数据库的用户名db.setPassword("oracle@123");			//写数据库的密码if (!db.open()){qDebug() << "数据库连接失败!";QSqlError lastError = db.lastError();qCritical() << lastError.nativeErrorCode() << ", " << lastError.text();}else{qDebug() << "数据库连接成功!";QSqlQuery query(db);if (query.exec("select * from sys_user")){qDebug() << "查询表格sys_user成功!";while(query.next()){qDebug() << query.value(0).toInt() << ", " << query.value(1).toString() << ", " << query.value(2).toString() << "," << query.value(3).toString();}}}
}

2、QT访问SQLServer数据库

2.1、关于QT访问SQL Server数据库的驱动编译请参阅
2.1.1 《QT学习笔记-Linux ARM环境下实现QT程序通过ODBC驱动访问SQLServer数据库》
2.2 参考代码

void Widget::on_btnDbTest_clicked()
{//以下代码测试访问SQLServer数据QSqlDatabase  db = QSqlDatabase::addDatabase("QODBC");db.setDatabaseName("mydsn");    	//此处写你配置的ODBC数据源的名称db.setUserName("sa");				//写数据库的用户名db.setPassword("sa@123");			//写数据库的密码if (!db.open()){qDebug() << "数据库连接失败!";QSqlError lastError = db.lastError();qCritical() << lastError.nativeErrorCode() << ", " << lastError.text();}else{qDebug() << "数据库连接成功!";QSqlQuery query(db);if (query.exec("select * from sys_user")){qDebug() << "查询表格sys_user成功!";while(query.next()){qDebug() << query.value(0).toInt() << ", " << query.value(1).toString() << ", " << query.value(2).toString() << "," << query.value(3).toString();}}}
}

3、QT访问MySQL数据库

3.1 关于QT访问MySQL数据库的驱动编译请参阅
3.1.1 《QT学习笔记-开发环境编译Qt MySql数据库驱动与交叉编译Qt MySql数据库驱动》
3.2 参考代码

void Widget::on_btnDbTest_clicked()
{//以下代码测试访问MySQL数据QSqlDatabase  db = QSqlDatabase::addDatabase("QMYSQL");db.setHostName("xxx.xxx.xxx.xxx");		//数据库服务器的ipdb.setPort(3306);						//数据库服务器的端口号db.setDatabaseName("mydbname");    //此处写你数据库的名称db.setUserName("root");			//写mysql数据库的用户名db.setPassword("root@123");			//写mysql数据库的密码if (!db.open()){qDebug() << "数据库连接失败!";QSqlError lastError = db.lastError();qCritical() << lastError.nativeErrorCode() << ", " << lastError.text();}else{qDebug() << "数据库连接成功!";QSqlQuery query(db);if (query.exec("select * from sys_user")){qDebug() << "查询表格sys_user成功!";while(query.next()){qDebug() << query.value(0).toInt() << ", " << query.value(1).toString() << ", " << query.value(2).toString() << "," << query.value(3).toString();}}}
}

4、QT访问PostgreSQL数据库

4.1 关于QT访问PostgreSQL数据库的驱动编译请参阅
4.1.1《QT学习笔记-QT安装postgresql驱动》
4.1.2 《QT学习笔记-postgresq数据库l驱动移植到RK3568ARM开发板》
4.2 参考代码

void Widget::on_btnDbTest_clicked()
{//以下代码测试访问PostgreSQL数据QSqlDatabase  db = QSqlDatabase::addDatabase("QPSQL");db.setHostName("xxx.xxx.xxx.xxx");		//数据库服务器的ipdb.setPort(5432);						//数据库服务器的端口号db.setDatabaseName("mydbname");    		//此处写你数据库的名称db.setUserName("postgres");				//写数据库的用户名db.setPassword("postgres");				//写数据库的密码if (!db.open()){qDebug() << "数据库连接失败!";QSqlError lastError = db.lastError();qCritical() << lastError.nativeErrorCode() << ", " << lastError.text();}else{qDebug() << "数据库连接成功!";QSqlQuery query(db);if (query.exec("select * from sys_user")){qDebug() << "查询表格sys_user成功!";while(query.next()){qDebug() << query.value(0).toInt() << ", " << query.value(1).toString() << ", " << query.value(2).toString() << "," << query.value(3).toString();}}}
}

5、QT访问Access数据库

5.1 参考代码

void Widget::on_btnDbTest_clicked()
{//以下代码测试访问Access数据QSqlDatabase  db = QSqlDatabase::addDatabase("QODBC");db.setDatabaseName("DRIVER={Microsoft Access Driver (*.mdb)};FIL={MS Access};DBQ=myaccessfile.mdb");    	//此处写你配置的ODBC数据源的名称或这连接字符串db.setPassword("sa@123");			//写数据库的密码if (!db.open()){qDebug() << "数据库连接失败!";QSqlError lastError = db.lastError();qCritical() << lastError.nativeErrorCode() << ", " << lastError.text();}else{qDebug() << "数据库连接成功!";QSqlQuery query(db);if (query.exec("select * from sys_user")){qDebug() << "查询表格sys_user成功!";while(query.next()){qDebug() << query.value(0).toInt() << ", " << query.value(1).toString() << ", " << query.value(2).toString() << "," << query.value(3).toString();}}}
}

6、QT多线程中访问数据库的要点

在不同线程中访问数据库时,关键时在创建QSqlDatabase对象时采用不用的连接名称,如下:

QSqlDatabase db1 = QSqlDatabase::addDatabase("QODBC", "MainThread");		
QSqlDatabase db2 = QSqlDatabase::addDatabase("QODBC", "SubThread");
//db1和db2在采用不用的连接名称MainThread、SubThread
http://www.tj-hxxt.cn/news/66598.html

相关文章:

  • 中山网站建设文化策划书竞价排名的服务模式是
  • 开滦建设集团网站如何写推广软文
  • 做网站可以卖别的牌子的产品吗广东网站seo营销
  • 做网站 公司有哪些好看的seo网站
  • 天津小型网站建设新网域名
  • 关于建立网站的计划百度投放广告联系谁
  • 王烨飞变形计广州aso优化公司 有限公司
  • 网站如何防止被攻击网络营销工具有哪些?
  • 黄骅烈士整站优化价格
  • 网站建设系统开发需要多少钱柳州网站建设
  • 惠州有做网站的吗怎样进行seo优化
  • 保定网站seo费用网络广告营销典型案例
  • 龙华网站建设多少钱百度站长工具怎么查排名
  • 政府网上商城采购流程优化方案丛书官网
  • 做普通网站选择什么服务器seo交流网
  • 做pc端网站流程外贸seo网站建设
  • 做图解的网站百度一下就知道手机版
  • Javascript和爬虫做网站seo顾问服务深圳
  • 国外网站博客网站也可以做引流易推广
  • 网站没有robots.txt如何创建微信小程序
  • 如何建设好网站哪家公司建设网站好
  • 做网站的价格搜索引擎推广的常见形式有
  • 网站文件内容多少与虚拟主机空间大小的关系百度的网站
  • 网站开发工程师就业前景温州网站建设开发
  • 加盟类网站建设贵阳网站建设公司
  • 网站开发手机appseo到底是做什么的
  • 太平洋手机官网报价大全南昌做seo的公司有哪些
  • 做自媒体一般都注册几个网站个人博客登录入口
  • 有网站源码如何建站免费大数据平台
  • 厦门手机网站建设网络搜索关键词