QSqlQuery綁定查詢

          來源: ChinaUnix博客  日期: 2009.05.27 08:40 (共有條評論) 我要評論
           
          Approaches to Binding Values
          Below we present the same example using each of the four different binding approaches, as well as one example of binding values to a stored procedure.
          Named binding using named placeholders:
               QSqlQuery query;
               query.prepare("INSERT INTO person (id, forename, surname) "
                             "VALUES (:id, :forename, :surname)");
               query.bindValue(":id", 1001);
               query.bindValue(":forename", "Bart");
               query.bindValue(":surname", "Simpson");
               query.exec();
          Positional binding using named placeholders:
               QSqlQuery query;
               query.prepare("INSERT INTO person (id, forename, surname) "
                             "VALUES (:id, :forename, :surname)");
               query.bindValue(0, 1001);
               query.bindValue(1, "Bart");
               query.bindValue(2, "Simpson");
               query.exec();
          Binding values using positional placeholders (version 1):
               QSqlQuery query;
               query.prepare("INSERT INTO person (id, forename, surname) "
                             "VALUES (?, ?, ?)");
               query.bindValue(0, 1001);
               query.bindValue(1, "Bart");
               query.bindValue(2, "Simpson");
               query.exec();
          Binding values using positional placeholders (version 2):
               QSqlQuery query;
               query.prepare("INSERT INTO person (id, forename, surname) "
                             "VALUES (?, ?, ?)");
               query.addBindValue(1001);
               query.addBindValue("Bart");
               query.addBindValue("Simpson");
               query.exec();
          Binding values to a stored procedure:
          This code calls a stored procedure called AsciiToInt(), passing it a character through its in parameter, and taking its result in the out parameter.
               QSqlQuery query;
               query.prepare("CALL AsciiToInt(?, ?)");
               query.bindValue(0, "A");
               query.bindValue(1, 0, QSql::Out);
               query.exec();
               int i = query.boundValue(1).toInt(); // i is 65
          Note that unbound parameters will retain their values.
          More information to see QT Help.
                         
                         
                         

          本文來自ChinaUnix博客,如果查看原文請點:http://blog.chinaunix.net/u2/86708/showart_1945836.html
            發表評論 查看評論(共有條評論)
           
          posted on 2013-01-09 16:11 姚先進 閱讀(321) 評論(0)  編輯  收藏

          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
           
          主站蜘蛛池模板: 嘉荫县| 鄂尔多斯市| 永靖县| 定陶县| 自治县| 汶上县| 百色市| 汝州市| 微博| 彰武县| 克山县| 崇左市| 新津县| 格尔木市| 克什克腾旗| 丽江市| 永寿县| 晴隆县| 八宿县| 平乐县| 确山县| 中牟县| 杭锦旗| 克拉玛依市| 温泉县| 泸水县| 安溪县| 太仆寺旗| 丁青县| 南靖县| 贵德县| 灌云县| 蒙自县| 武穴市| 略阳县| 崇礼县| 怀宁县| 资兴市| 加查县| 家居| 木里|