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

QT-Mysql-查询语句-查询是否有表-表列名-查询记录

1.是否有表



查询DBname=`pvfforecast` 中是否有表名为'forecast_power'的表
注意引号的用法
以下2种写法都可以。

SELECT COUNT(*) AS table_count  FROM information_schema.tables   WHERE table_schema = DATABASE()  AND table_name ='forecast_power';
SELECT COUNT(*) AS table_count  FROM information_schema.tables   WHERE table_schema = 'pvfforecast'  AND table_name ='forecast_power';


2.表列名



查询DBname=`pvfforecast` 中表名为'forecast_power'的表列名

SELECT COLUMN_NAME FROM information_schema.columns WHERE  table_schema = 'pvfforecast'  AND table_name ='theory_power' ORDER BY ORDINAL_POSITION;

3.查询记录



从数据库名为`pvfforecast`,表名为`forecast` 中查询时间不能写“=”要写“>=”

显示调用:`pvfforecast`.`forecast_weather`

SELECT * FROM `pvfforecast`.`forecast_weather`  WHERE  'forecast_time' >='2025-04-28 00:00:00';



4.一次插入一条数据

QString sql=QString("INSERT INTO `theory_weather` (""`forecast_time`, `data_time`, `temperature`, `airpressure`, ""`humidity`, `winddirection`, `windspeed`, `rainfall`, ""`cloundcover`, `radiation`, `radiation_coe1`, `weather_coe1`, ""`model_coe1`, `inuse_capacity`, `scatter`, `radiation_fz`"") VALUES (""%1, %2, %3, %4, ""%5, %6, %7, %8, ""%9, %10, %11, %12, ""%13, %14, %15, %16"")").arg(forecastTimeStr,          // 1dataTimeStr,              // 2formatValue(temperature), // 3formatValue(airpressure), // 4formatValue(humidity),    // 5formatValue(winddirection), // 6formatValue(windspeed),   // 7formatValue(rainfall),    // 8formatValue(cloundcover), // 9formatValue(radiation),   // 10formatValue(radiationCoe1), // 11formatValue(weatherCoe1), // 12formatValue(modelCoe1),   // 13formatValue(inuseCapacity), // 14formatValue(scatter),     // 15formatValue(radiationFz)  // 16);



5.一次插入多条数据


1.建立连接
2.开始事务
3.插入数据
4.批量插入
5.提交事务//1.检查数据库连接是否有效if (m_mysqldb.m_db.isOpen()){//2. 开始事务if (!m_mysqldb.m_db.transaction()){throw QString("Function:storeTheoryweather-start transaction  fail: %1").arg(m_mysqldb.m_db.lastError().text());}//3.插入数据 m_mysqldb.m_query.prepare("INSERT INTO `theory_weather` ""(forecast_time, data_time, radiation,radiation_fz) ""VALUES (:forecast_time, :data_time, :radiation,:radiation_fz)");// 4.批量插入数据QString str;for (int i = 0; i < 960; i++){// 绑定参数m_mysqldb.m_query.bindValue(":forecast_time", forecastDatetime);           m_mysqldb.m_query.bindValue(":data_time", dataDatetime);str= QString::number(m_radiationtheoryValues.at(i), 'f', 2);m_mysqldb.m_query.bindValue(":radiation", "100");//m_radiationtheoryValues.at(i));m_mysqldb.m_query.bindValue(":radiation_fz", "100");dataDatetime=dataDatetime.addSecs(15 * 60);           if (!m_mysqldb.m_query.exec()){msg="----Error inserting row";msg+= QString("1%").arg(i);msg+=":";msg+=query.lastError().text();//   qDebug() << "Error inserting row" << i << ":" << query.lastError().text();m_mysqldb.m_db.rollback(); // 回滚事务                 return ;}}// 5.提交事务if (!m_mysqldb.m_db.commit()){msg =QString("---CSU_fmeteorandpower---committing error:: %1").arg(m_mysqldb.m_db.lastError().text());             throw QString("committing transaction:: %1").arg(m_mysqldb.m_db.lastError().text());}else{msg ="---storeTheoryweather-----successful!";                  }

http://www.dtcms.com/a/347506.html

相关文章:

  • 力扣hot100:搜索二维矩阵与在排序数组中查找元素的第一个和最后一个位置(74,34)
  • ros 消息类型与查阅相关内容
  • XCVM1802-2MSEVSVA2197 XilinxAMD Versal Premium FPGA
  • 同步和异步、阻塞和非阻塞的再理解
  • JAVA核心基础篇-集合
  • 力扣(组合)
  • 如何解决 pyqt5 程序“长时间运行失效” 问题?
  • React学习(十一)
  • Windows 平台查看端口占用情况并终止进程
  • flink常见问题之非法配置异常
  • leetcode 852 山脉数组的顶峰索引
  • 讲点芯片验证中的统计覆盖率
  • 【URP】[平面阴影]原理与实现
  • 如何使用和优化SQL Server存储过程:全面指南
  • 论文阅读:arxiv 2025 Can You Trick the Grader? Adversarial Persuasion of LLM Judges
  • 【数据分享】地级市对外开放程度(2002-2021)-有缺失值
  • SpringBoot自动装配原理深度解析
  • 【LeetCode 热题 100】300. 最长递增子序列——(解法一)记忆化搜索
  • mmap映射物理内存之四内核cache同步
  • 后台管理系统-14-vue3之tag标签页的实现
  • JEI(Journal of Electronic lmaging)SCI四区期刊
  • TypeScript的接口 (Interfaces)讲解
  • Python 版本与 package 版本兼容性检查方法
  • 定时任务——ElasticJob原理
  • ChipCamp探索系列 -- 4. Intel CPU的十八代微架构
  • 【背诵2025】测试
  • 数据结构与算法——树和二叉树
  • 【科研绘图系列】浮游植物的溶解性有机碳与初级生产力的关系
  • 大麦APP抢票
  • 数据结构 之 【AVL树的简介与部分实现】(部分实现只涉及AVL树的插入问题,包括单旋((右单旋、左单旋))、双旋(左右单旋、右左单旋)等操作)