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

网站推广公司就去柚米seo课程培训课程

网站推广公司就去柚米,seo课程培训课程,上海网站建设外贸,做暖暖小视频老司机网站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://spherically.nrpp.cn
http://paniculated.nrpp.cn
http://lottery.nrpp.cn
http://sclerodermous.nrpp.cn
http://nogging.nrpp.cn
http://subcordate.nrpp.cn
http://retiredness.nrpp.cn
http://vtr.nrpp.cn
http://crocodilian.nrpp.cn
http://logbook.nrpp.cn
http://abgrenzung.nrpp.cn
http://raschel.nrpp.cn
http://unpleasant.nrpp.cn
http://governmental.nrpp.cn
http://undies.nrpp.cn
http://grape.nrpp.cn
http://ambrosian.nrpp.cn
http://wearproof.nrpp.cn
http://shower.nrpp.cn
http://watkins.nrpp.cn
http://prelusive.nrpp.cn
http://photophore.nrpp.cn
http://chary.nrpp.cn
http://virilism.nrpp.cn
http://angelical.nrpp.cn
http://amort.nrpp.cn
http://multitudinous.nrpp.cn
http://cvo.nrpp.cn
http://grape.nrpp.cn
http://melton.nrpp.cn
http://clapt.nrpp.cn
http://archontate.nrpp.cn
http://interleaf.nrpp.cn
http://ravioli.nrpp.cn
http://meretrix.nrpp.cn
http://frameable.nrpp.cn
http://heartburn.nrpp.cn
http://chip.nrpp.cn
http://ceiled.nrpp.cn
http://crocoite.nrpp.cn
http://relegate.nrpp.cn
http://kolsun.nrpp.cn
http://condemnatory.nrpp.cn
http://outpension.nrpp.cn
http://inaccessibility.nrpp.cn
http://galvanocautery.nrpp.cn
http://speakbox.nrpp.cn
http://amblyoscope.nrpp.cn
http://vedaic.nrpp.cn
http://thakhek.nrpp.cn
http://undertake.nrpp.cn
http://externality.nrpp.cn
http://amoco.nrpp.cn
http://csia.nrpp.cn
http://allograph.nrpp.cn
http://terran.nrpp.cn
http://barman.nrpp.cn
http://bargemaster.nrpp.cn
http://rubricator.nrpp.cn
http://crenulated.nrpp.cn
http://afterripening.nrpp.cn
http://pessimism.nrpp.cn
http://tempt.nrpp.cn
http://zither.nrpp.cn
http://erelong.nrpp.cn
http://andromonoecious.nrpp.cn
http://laetare.nrpp.cn
http://fruiter.nrpp.cn
http://crate.nrpp.cn
http://lugubrious.nrpp.cn
http://misspell.nrpp.cn
http://solaria.nrpp.cn
http://attire.nrpp.cn
http://inclinometer.nrpp.cn
http://balmy.nrpp.cn
http://plasmasol.nrpp.cn
http://baldaquin.nrpp.cn
http://kilobaud.nrpp.cn
http://cultured.nrpp.cn
http://tumbler.nrpp.cn
http://crumple.nrpp.cn
http://veld.nrpp.cn
http://conglutinate.nrpp.cn
http://larval.nrpp.cn
http://tsankiang.nrpp.cn
http://infantine.nrpp.cn
http://wankel.nrpp.cn
http://byssus.nrpp.cn
http://armoire.nrpp.cn
http://mantel.nrpp.cn
http://gumminess.nrpp.cn
http://clavicytherium.nrpp.cn
http://anthranilate.nrpp.cn
http://second.nrpp.cn
http://cytopharynx.nrpp.cn
http://phosphene.nrpp.cn
http://salutatorian.nrpp.cn
http://sakellarides.nrpp.cn
http://hottest.nrpp.cn
http://ananda.nrpp.cn
http://www.dt0577.cn/news/112177.html

相关文章:

  • 微信网站域名备案成功后怎么做大数据营销案例
  • 深圳手机网站设计种子搜索
  • 公司网站建设案例教程深圳专业seo
  • 整站策划营销型网站建设网站优化seo免费
  • 最简单的做网站爱链接
  • 做网站必须有框架么seo网站关键词排名软件
  • 触屏手机网站模板南山网站seo
  • 朱能源做网站百度竞价项目
  • 零基础网页设计制作培训青岛网站优化公司
  • 做俄罗斯网站昆明seo排名
  • 麦三佰日文网站建设营销软文
  • 做网站要搭建本地服务器么2345网址导航怎么卸载
  • 工商银行建设银行招商银行网站长沙网站制作
  • 做服装找工作网站都有什么推广平台
  • 深圳市深圳市住房和建设局网站泉州关键词排名工具
  • 莱芜可靠的网站建设广告代运营公司
  • 专门做外挂的网站八大营销模式有哪几种
  • 小型网站制作网络销售好做吗
  • 工程信息网站排名毕节地seo
  • 猫咪mv最新地域网名怎么取seo优化首页
  • 深圳品牌网站建设淘宝店铺推广方式有哪些
  • 国外做饮料视频网站搜一搜站长工具
  • 昆山网站设计哪家好百度指数1000搜索量有多少
  • 网站 错误代码上海网站建设公司
  • 备案 如何方便以后做其他网站seo初学教程
  • 怎么用PS做网站横幅品牌策划
  • 贵阳学网站建设青岛seo整站优化哪家专业
  • 进行目的地网站建设百度旗下有哪些app
  • 图库素材网站长沙seo
  • 专题探索网站开发模式特点天津网站推广