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

做外贸网站有哪些西藏自治区seo 标题 关键词优化

做外贸网站有哪些,西藏自治区seo 标题 关键词优化,dede 网站版权信息,网站建设科技公司涉及到数据库,首先安利一个软件Navicat Premium,用来查询数据库很方便 QMysql驱动是Qt SQL模块使用的插件,用于与MySQL数据库进行通信。要编译QMysql驱动,您需要满足以下条件: 您需要安装MySQL的客户端库和开发头文件…

涉及到数据库,首先安利一个软件Navicat Premium,用来查询数据库很方便 

QMysql驱动是Qt SQL模块使用的插件,用于与MySQL数据库进行通信。要编译QMysql驱动,您需要满足以下条件:

  • 您需要安装MySQL的客户端库和开发头文件,这些文件通常随MySQL的安装程序一起提供,或者可以从MySQL官网下载。请注意,您需要根据您的Qt架构(32位或64位)选择正确的数据库库文件。
  • 您需要获取Qt的源代码,这些代码可以从Qt官网下载。您可以选择与您的Qt版本相匹配的源代码,也可以选择最新的源代码。
  • 您需要使用qmake和make工具来编译QMysql驱动,这些工具通常随Qt的安装程序一起提供,或者可以从Qt官网下载。请注意,您需要根据您的操作系统和编译器选择正确的工具。

由于现在版本的QT的Qmysql在安装的时候没有,需要自行去编译这个dll文件出来。

编译出QMysql的相关dll文件的步骤如下:

  • 打开Qt命令提示符,进入Qt源代码目录下的qt/src/plugins/sqldrivers/mysql文件夹,例如:
F:\QT\5.12.9\Src\qtbase\src\plugins\sqldrivers\mysql

然后把下面这一行代码注释掉:并且配置mysql的地址,如下面所示:

Copy

  • 运行qmake命令,指定MySQL的头文件和库文件的路径,例如:

INCLUDEPATH += "E:/mysql/mysql-5.7.27-winx64/include"
DEPENDPATH += "E:/mysql/mysql-5.7.27-winx64/include"
LIBS += "E:/mysql/mysql-5.7.27-winx64/lib/libmysql.lib"
DESTDIR = ../mysql/mylib

Copy

  • 运行make或mingw32-make命令,根据您的编译器类型(如果是在VS环境下使用sql,那么就只需要在VS的编译器下面进行编译)选择合适的命令,例如:
mingw32-make

Copy

  • 如果编译成功,您将在当前目录下看到一个名为qsqlmysql.dll的文件,这就是QMysql插件。您需要将这个文件复制到您运行Qt应用程序时使用的Qt目录下的qt/plugins/sqldrivers文件夹中,例如:
F:\QT\5.12.9\msvc2017_64\plugins\sqldrivers

以上就是我们的准备工作:

然后就是如何在QT里面使用Qmysql功能;首先,咱们需要先引入头文件,文件如下:

#include <QtSql/QSqlDatabase>	// 连接数据库
#include <QtSql/QSqlError>		// 数据库连接失败打印报错语句
#include <QtSql/QSqlQuery>		// 数据库操作(增删改查)
#include <QSqlQueryModel>

我定义了一下函数名,用来在cpp文件里面写入:

 Q_OBJECT
public:mysql(QWidget *parent);~mysql();void insert(QString InserName,int id,QString symbol,QString value);void insert_line(QString InserName,QString id,QString symbol,QString value,QString v,QString despoitory);void data_connect(bool,bool);//连接数据库void data_test_connect(QStringList);//测试能否成功连接数据库void close_data();void creat_table(QString TableName);//创建一个表void update_table(QString InserName,QString id,QString key,QString value);//更新数据库void delete_table(QString TableName,QString id);//删除数据库void find_alltable(QString datebase);//查找所有数据路表格void find_table_inf(QString TableName);//查询某个表中的数据void find_table_row(QString TableName,QString row_name,QString col_name);//查询表中某一行的数据void find_table_col(QString TableName,QString col_name);//表名,列名void find_table_desposite(QString TableName,QString col_name);//表名,列名查询储位名

对应的函数名里面,实现的功能如下所示:

首先是连接数据库部分功能

QSettings *myini=new QSettings("info.ini", QSettings::IniFormat);//构造QSettings对象,访问ini文件QStringList info_digitial={"digitial_type","hostname","port","database_name","user_name","password"};QStringList s;//设置键值对s.clear();myini->beginGroup("digital");for(int i=0;i<info_digitial.size();i++){s.append(myini->value(info_digitial[i]).toString());}myini->endGroup();delete myini;//输出可用数据库qDebug()<<"available drivers:";QStringList drivers = QSqlDatabase::drivers();foreach(QString driver, drivers)qDebug()<<driver;//输出中含有MySQL,那么恭喜你说明你的qt有MySQL驱动了QSqlDatabase db = QSqlDatabase::addDatabase(s[0]);db.setHostName(s[1]);db.setPort(s[2].toInt());db.setDatabaseName(s[3]);//数据库名db.setUserName(s[4]);//用户名db.setPassword(s[5]);//密码bool ok = db.open();//打开并连接数据库if(message_prompt){if (ok){QMessageBox::information(this, "infor", "success connect");}else {QMessageBox::information(this, "infor", "open failed");qDebug()<<"error open database because"<<db.lastError().text();}}

我这里是通过读取ini文件里面存储的信息,来获得数据库的设置,主要包含有: 

定义一个QSqlDatabase 对象db,实例化它,如果能够成功connect,则会返回一个布尔值,在这里我通过这个bool值来判断,是否成功连接上数据库了。

然后就是在数据库里面创建一个table,并且想里面插入值:

QSqlQuery query;QString sql=QString("create table %1(订单号 text, 料号 text, 品名 text, 数量 text,储位 text);").arg(TableName);//"订单号","料号","品名","数量"qDebug()<<"SQL"<<sql;//创建表是否成功if (!query.exec(sql))//.exec(),作用是开启一个循环,执行一个事件,相当于while(1){qDebug() << QString::fromLocal8Bit("creat table failed:") << query.lastError();}else{qDebug() << QString::fromLocal8Bit("creat table success!");}

在表table里面插入数据的功能实现如下所示:

 QSqlQuery query;QString str=QString("insert into %4(序号,标签,value) values(%1,'%2','%3')").arg(id).arg(symbol).arg(value).arg(InserName);if(query.exec(str)==false){qDebug() << "insert failed";QMessageBox::warning(this,u8"数据插入错误",u8"请检查数据是否正确");}else{QMessageBox::information(this, "insert", "insert connect");qDebug() <<"insert success";}

更新数据的功能实现,代码部分如下所示:

    QSqlQuery query;QString updata = QString("update %1 set  %2='%3' where 订单号='%4'").arg(InserName).arg(column).arg(value).arg(row);qDebug()<<"--update--"<<updata;if (!query.exec(updata)){qDebug() << QString::fromLocal8Bit("updata failed!") << query.lastError();}else{qDebug() << QString::fromLocal8Bit("updata success!");}

前面我们提了如何创建数据库的table和插入数据的功能实现,下面我们就谈一谈这个数据库的删除功能的视线,代码部分,如下所示:

     QSqlQuery query;QString sql = QString("delete from %1 where  订单号 = '%2'").arg(TableName).arg(id);if(query.exec(sql)){qDebug()<<"delete success!";}else{qDebug()<<"delete failed!";}

http://www.mmbaike.com/news/52061.html

相关文章:

  • 网页设计图片路径怎么写seo网站外包公司
  • 太原顶呱呱做网站地址电话seo咨询岳阳
  • 手机网络代理怎么关闭seo排名怎样
  • wordpress最漂亮的主题宁波谷歌seo推广
  • 西安做网站的在哪把百度网址大全设为首页
  • 网站建设中什么意思做竞价托管的公司
  • 哪里有机械加工活巢湖seo推广
  • jsp开发网站清博舆情系统
  • 深圳 三人 网站建设营销培训内容有哪些
  • 个人网上怎样注册公司seo和点击付费的区别
  • 格力网站建设首页网络促销策略
  • 重生做皇帝小说网站裂变营销
  • 诛仙2官方网站西施任务怎么做搜狗站长平台验证网站
  • 一级a做爰片免费观网站看无码全网推广平台
  • 正能量网站推荐不需要下载品牌营销策划网站
  • 空中客车网站建设需求百度竞价推广托管
  • 自己做的网站本地虚拟上传不屏蔽的国外搜索引擎
  • 自媒体还是做网站企业查询app
  • 赶集网站建设多少钱推广赚钱app哪个靠谱
  • 网站建设税点教育培训平台
  • wordpress商品分销标题优化方法
  • 做服装外贸的网站网站搜索引擎优化的基本内容
  • 免费用手机制作网站 百度百深圳网络营销推广专员
  • 南通网站上百度首页品牌策略怎么写
  • 网站设计用什么软件做惠州seo网络推广
  • 做网站运维应该看的书爱站工具包
  • 网站设计的发展趋势成品在线视频免费入口
  • 海淀区城市建设档案馆网站网络营销策略ppt
  • 网站开发需求描述长沙seo咨询
  • 西安网站制作一般多少钱长沙营销型网站建设