使用QT-QSqlQuery::value()遇到的問題

在實現客戶端間好友添加功能時,我通過以下函數想實現數據庫對好友信息的保存

bool OpeDB::handleAddFriend_repound(const char *pername, const char *name)
{
? ? // pername 被添加方 ?name 申請添加方
? ? qDebug() << pername << " " << name;
? ? if (pername == NULL || name == NULL)
? ? {
? ? ? ? return false;
? ? }
? ? // 先找到對應名字的ID
? ? QString data = QString("select id from usrInfo where name='%1' or name='%2'").arg(pername).arg(name);
? ? qDebug() << data;
? ? QSqlQuery query;
? ? query.exec(data);
? ? query.next();
? ? // 再在friend表格中添加好友關系
? ? qDebug() << query.value(0).toInt() << " " << query.value(1).toInt();
? ? data = QString("insert into friend(id, friendId) values('%1', '%2')").arg(query.value(0).toInt()).arg(query.value(1).toInt());
? ? query.exec(data);
? ? return true;
}
?

但是我遇到一個問題,代碼 qDebug()<<query.value(0).toInt()<<" "<<query.value(1).toInt();訪問不到兩個數據,讓我卡了很久。

后面通過使用GPT才發現,原來是我對.value()的理解是錯誤的

它里面的數字是訪問query所在的那行數據的元素

文字表達有點晦澀,上圖:

通過value函數是沒辦法訪問到rose.id的

?所以,要么讀取先讀取jack的id后query.next(),再讀取rose的id,要么修改select語句讓其直接讀取兩個用戶id

讀取兩個用戶id的語句如下

QString data = QString("select u1.id, u2.id from usrInfo u1, usrInfo u2 where u1.name='%1' and u2.name='%2'").arg(pername).arg(name);
?

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/11059.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/11059.shtml
英文地址,請注明出處:http://en.pswp.cn/web/11059.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Nginx(簡潔版)

基本配置 worker_processes 1; //默認為1&#xff0c;表示開啟一個業務進程 events //事件驅動模塊&#xff08;&#xff09;{worker_connections 1024; //單個業務進程可接受連接數 } http{include mime.types; // 引入http mime類型&#xff08;在外部已經定義好&#xff0c…

Java數組——冒泡排序

冒泡排序是最出名的排序算法之一&#xff0c;總共有八大排序。 冒泡排序代碼并不復雜&#xff0c;共兩層循環&#xff0c;外層冒泡輪數&#xff0c;里層依次比較。 算法步驟&#xff1a; 1. 比較數組中兩個相鄰元素&#xff0c;如果第一個元素比第二個元素大&#xff0c;交換…

如何在huggingface上申請下載使用llama2/3模型

1. 在對應模型的huggingface頁面上提交申請 搜索對應的模型型號 登錄huggingface&#xff0c;在模型詳情頁面上&#xff0c;找到這個表單&#xff0c;填寫內容&#xff0c;提交申請。需要使用梯子&#xff0c;country填寫梯子的位置吧(比如美國&#xff09; 等待一小時左右…

SEMI啟動SiC專有技術項目

公司鄭重聲明&#xff0c;其正致力于篩選那些能夠穩定輸出、且可重復使用的關鍵參數性能。SEMI&#xff0c;這家SiC領域的佼佼者&#xff0c;已經啟動了一項獨具匠心的專有技術&#xff08;KGD&#xff09;篩選程序。該程序旨在為客戶提供高品質的、經過嚴格電氣分類與光學檢驗…

基于python的旅游爬蟲可視化與實現

摘要 本項目為基于python的旅游爬蟲可視化的設計與實現&#xff0c;項目以Web系統形式展示&#xff0c;利用Xpath爬蟲爬取去哪兒網針對旅游業的需求&#xff0c;對國內熱門旅游景點數據可視化系統&#xff0c;將爬取好的數據保存為CSV文件&#xff0c;再通過ORM框架導入MySQL數…

Python圖形界面(GUI)Tkinter筆記(五):控件的定位(3)

Tkinter(GUI)設計圖形界面時有三種控件的包裝方法去定位各控件在窗口(父容器、根窗口)上的位置。 【1】pack()方法:用方位來定位位置,類似于Word文檔中的文字對齊方式。 【2】grid()方法:用二維表格式的坐標值定位,類似于EXCEL單元格坐標。 【3】place()方法:用窗口…

VUE基礎之,ref屬性,props配置項,mixin(混入)

ref屬性 被用來給元素或子組件注冊引用信息&#xff08;id的替代者&#xff09; 應用在html標簽上獲取的是真實DOM元素&#xff0c;應用在組件標簽上是組件實例對象&#xff08;vc&#xff09; 使用方式&#xff1a; 打標識&#xff1a;<h1 ref"xxx">.....&l…

【python量化交易】qteasy使用教程07——創建更加復雜的自定義交易策略

創建更加復雜的自定義交易策略 使用交易策略類&#xff0c;創建更復雜的自定義策略開始前的準備工作本節的目標繼承Strategy類&#xff0c;創建一個復雜的多因子選股策略策略和回測參數配置&#xff0c;并開始回測 本節回顧 使用交易策略類&#xff0c;創建更復雜的自定義策略 …

Mysql 多表查詢,內外連接

內連接&#xff1a; 隱式內連接 使用sql語句直接進行多表查詢 select 字段列表 from 表1 , 表2 where 條件 … ; 顯式內連接 將‘&#xff0c;’改為 inner join 連接兩個表的 on select 字段列表 from 表1 [ inner ] join 表2 on 連接條件 … ; select emp.id, emp.name, …

應急響應篇——加固

Linux 安全配置 1.下載安裝安全軟件 2.取消Telnet登錄采用SSH方式并更改ssh服務端遠程登錄的配置 1)Telnet登錄協議是明文不加密不安全,所以采用更安全的SSH協議。 2)更改ssh服務端遠程登錄相關配置。 3.用戶管理相關 1)刪除不必要的用戶和用戶組。 2)用戶密碼管理…

Selenium 自動化 —— 一篇文章徹底搞懂XPath

更多關于Selenium的知識請訪問“蘭亭序咖啡”的專欄&#xff1a;專欄《Selenium 從入門到精通》 文章目錄 前言 一、什么是xpath&#xff1f; 二、XPath 節點 三. 節點的關系 1. 父&#xff08;Parent&#xff09; 2. 子&#xff08;Children&#xff09; 3. 同胞&#xff08;S…

力扣:48. 旋轉圖像(Java)

目錄 題目描述&#xff1a;輸入&#xff1a;輸出&#xff1a;代碼實現&#xff1a; 題目描述&#xff1a; 給定一個 n n 的二維矩陣 matrix 表示一個圖像。請你將圖像順時針旋轉 90 度。 你必須在 原地 旋轉圖像&#xff0c;這意味著你需要直接修改輸入的二維矩陣。請不要 使…

LangChain:模型 I/O 封裝使用解析和感觸

目錄 模型 API&#xff1a;LLM vs. ChatModel OpenAI 模型封裝 多輪對話 Session 封裝 換個國產模型 模型的輸入與輸出 Prompt 模板封裝 PromptTemplate ChatPromptTemplate MessagesPlaceholder 從文件加載 Prompt 模板 TXT模板 Yaml模板 Json模板 輸出封裝 Out…

mediasoup源碼(一)編譯及部署

基本介紹 mediasoup是一個sfu架構的流媒體服務器&#xff0c;讀者可以根據需要選擇不同的編譯方式。如果只需要學習c流媒體傳輸部分&#xff0c;則選擇mediasoup&#xff0c;如果需要學習mediasoup整個demo&#xff0c;并做演示&#xff0c;則可以選擇mediasoup-demo&#xff…

is和==的關系

Python中is和的關系 is判斷兩個變量是不是指的是同一個內存地址&#xff0c;也就是通過id()函數判斷 判斷兩個變量的值是不是相同 a [1, 2, 3, 4] b [1, 2, 3, 4] print(id(a)) # 2298268712768 print(id(b)) # 2298269716992 print(a is b) # False print(a b) # Tr…

目標檢測標注工具Labelimg安裝與使用

目錄 一、安裝Labelimg與打開 二、使用 1、基本功能介紹 2、快捷鍵 3、狀態欄的工具 三、附錄 1、YOLO模式創建標簽的樣式 2、create ML模式創建標簽的樣式 3、PascalVOC模式創建標簽的樣式 一、安裝Labelimg與打開 labelimg是一款開源的數據標注工具&#xff0c;可以…

51基于單片機的溫室大棚系統設計

設計摘要&#xff1a; 本設計旨在基于51單片機和藍牙技術&#xff0c;實現一個功能完善的溫室大棚系統。該系統具備以下主要功能&#xff1a;首先&#xff0c;通過連接的顯示屏能夠實時地顯示當前的溫度和濕度信息&#xff0c;方便用戶了解溫室內的環境變化。其次&#xff0c;…

ctfshow web271--web273

web271 laravel5.7反序列化漏洞 define(LARAVEL_START, microtime(true));/* |-------------------------------------------------------------------------- | Register The Auto Loader |-------------------------------------------------------------------------- | |…

mysql IF語句,模糊檢索

使用MySQL IF語句完成條件檢索 IF(expr1,expr2,expr3)&#xff0c;expr1如果滿足條件就用expr2&#xff0c;否則用expr3 SELECTa.*,count(*) AS stdSum FROMidb_std_power_engin_v1 a WHERE1 1 AND (IF( KV IS NOT NULL, a.NAME REGEXP KV, 1 1 ) ORIF( KV IS NOT NULL, …

凸優化理論學習二|凸函數及其相關概念

系列文章目錄 凸優化理論學習一|最優化及凸集的基本概念 文章目錄 系列文章目錄一、凸函數&#xff08;一&#xff09;凸集&#xff08;二&#xff09;凸函數的定義及舉例&#xff08;三&#xff09;凸函數的證明1、將凸函數限制在一條直線上2、判斷函數是否為凸函數的一階條件…