青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

posts - 10,  comments - 2,  trackbacks - 0

如有改動以CSDN版為主,格式比較好看
http://blog.csdn.net/reborntercel/article/details/7000220


    QSqlQueryModel類為SQL的結果集提供了一個只讀的數(shù)據模型,下面我們先利用這個類進行一個最簡單的操作.

常用函數(shù)

void QSqlQueryModel::setQuery ("SQL語句") // 執(zhí)行SQL語句,此處還可以傳入QSqlQuery對象,此時可以利用QSqlQuery類的某些特性,如預操作等.

setHeaderData()     //設置水平頭標題

columnCount(); //獲得列數(shù)

columnCount(); //獲得列數(shù)

QSqlRecord QSqlQueryModel::record ( int row ) const //返回row行包含的信息,可訪問單條的記錄

QModelIndex QAbstractItemModel::index ( int row, int column, const QModelIndex & parent = QModelIndex() )  //返回指定的行和列的索引(index)

index.data()  //返回index索引的值

query() //返回與QSqlQuery相關的模型

  1. QSqlQueryModel *model = new QSqlQueryModel;  
  2. model->setQuery(“select * from student”);  
  3. model->setHeaderData(0, Qt::Horizontal, tr(“id”));  
  4. model->setHeaderData(1, Qt::Horizontal, tr(“name”));  
  5. QTableView *view = new QTableView;  
  6. view->setModel(model);  
  7. view->show();  

 

利用query執(zhí)行SQL語句

  1. QSqlQuery query = model->query();  
  2. query.exec("select name from student where id = 1");  
  3. query.next();  
  4. qDebug() << query.value(0).toString(); // 如果上面的select改成insert語句,而且是顯示在QTableView中的話,需再查詢一次model->setQuery("select ...")才能顯示剛插入的語句  


       因為QSqlQueryMode模型默認是只讀的,所以我們在窗口上并不能對表格中的內容進行修改。但是我們可以創(chuàng)建自己的模型,然后按照我們自己的需要來顯示數(shù)據和修改數(shù)據。如果要想使其可讀寫,需要自己的類繼承自QSqlQueryModel,并且重寫setData() 和 flags() 兩個函數(shù)如果我們要改變數(shù)據的顯示,就要重寫data() 函數(shù)

  1. Qt::ItemFlags MySqlQueryModel::flags(const QModelIndex &index) const //返回表格是否可更改的標志   
  2. {  
  3.      Qt::ItemFlags flags = QSqlQueryModel::flags(index);  
  4.      if (index.column() == 1) //第二個字段可更改,即學生的名字字段   
  5.         flags |= Qt::ItemIsEditable;  
  6.      return flags;  
  7.  }  
  8.   
  9. bool MySqlQueryModel::setData(const QModelIndex &index, const QVariant &value, int /* role *///表格添加數(shù)據   
  10. {  
  11.     QModelIndex primaryKeyIndex = QSqlQueryModel::index(index.row(), 0);  
  12.     int id = data(primaryKeyIndex).toInt(); //獲取id號 也可以這樣用,primaryKeyIndex.data();   
  13.   
  14.     clear();  
  15.     bool isOk;  
  16.     if (index.column() == 1) //第二個屬性可更改   
  17.     {  
  18.         QSqlQuery query;  
  19.         query.prepare("UPDATE STUDENT SET NAME = :name WHERE id = :id");  
  20.         query.bindValue(":name","小五");  
  21.         query.bindValue(":id",id);  
  22.         isOk = query.exec();  
  23.   
  24.         refresh();// 此處最好添加代碼刷新結果,或在此調用刷新函數(shù)   
  25.         return isOK;  
  26.     }  
  27.     return false;  
  28. }  
  29.   
  30. void MySqlQueryModel::refresh() //更新顯示   
  31. {  
  32.     setQuery("select * from student");  
  33.     setHeaderData(0, Qt::Horizontal, QObject::tr("學號ID"));  
  34.     setHeaderData(1, Qt::Horizontal, QObject::tr("名字"));  
  35. }  
  36.   
  37. // tata()改寫某一個列的顯示方式   
  38. QVariant MySqlQueryModel::data(const QModelIndex &index, int role) const  
  39.          //更改數(shù)據顯示樣式   
  40. {  
  41.     QVariant value = QSqlQueryModel::data(index, role);  
  42.     if (role == Qt::TextColorRole && index.column() == 0)  
  43.         return qVariantFromValue(QColor(Qt::red)); //第一個屬性的字體顏色為紅色   
  44.     return value;  
  45. }  
posted on 2011-11-22 15:16 再生的雄鷹 閱讀(2946) 評論(0)  編輯 收藏 引用

<2025年9月>
31123456
78910111213
14151617181920
21222324252627
2829301234
567891011

常用鏈接

留言簿(1)

隨筆檔案

文章分類

文章檔案

搜索

  •  

最新評論

閱讀排行榜

評論排行榜

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            亚洲欧洲日本mm| 久久青草福利网站| 欧美有码在线视频| 午夜精品视频在线观看| 99精品视频免费在线观看| 亚洲国产精品久久久久秋霞影院 | 亚洲精选久久| 一本色道**综合亚洲精品蜜桃冫| 日韩一级大片| 欧美亚洲视频在线观看| 六月婷婷久久| 99精品欧美一区二区三区综合在线| 99视频在线精品国自产拍免费观看 | 欧美一区午夜精品| 国产一区二区精品在线观看| 久久爱另类一区二区小说| 久久精品国产免费看久久精品| 久久精品一级爱片| 亚洲人成绝费网站色www| 日韩视频免费观看| 欧美一区二区三区四区在线观看| 另类激情亚洲| 国产精品入口夜色视频大尺度 | 亚洲伦理一区| 羞羞漫画18久久大片| 久久视频一区| 日韩视频一区二区三区在线播放 | 夜夜嗨av一区二区三区免费区| 午夜精品一区二区三区电影天堂 | 久久久久九九视频| 欧美另类视频在线| 国产一区在线看| 亚洲视频每日更新| 久久亚洲精品伦理| 在线综合亚洲欧美在线视频| 久久激情一区| 国产精品久久久久91| 亚洲成人资源网| 午夜国产精品影院在线观看| 欧美xxx成人| 午夜亚洲福利| 欧美视频一区二区在线观看| 在线观看亚洲一区| 久久国内精品自在自线400部| 亚洲国产精品欧美一二99| 午夜视频精品| 国产精品国产精品| 一区二区三区日韩精品| 欧美成人黄色小视频| 欧美亚洲综合网| 国产精品久久久久aaaa樱花| 亚洲精品一二三区| 欧美二区在线| 免费的成人av| 亚洲第一页在线| 久久久人成影片一区二区三区| 亚洲视频欧美视频| 欧美日韩美女| 亚洲视频视频在线| 亚洲精品少妇| 欧美巨乳在线| 日韩一区二区精品葵司在线| 免费亚洲网站| 另类激情亚洲| 亚洲精品一区二区三区蜜桃久| 欧美高潮视频| 久久青青草综合| 亚洲欧洲日产国码二区| 欧美亚洲一级| 亚洲激情成人| 女女同性女同一区二区三区91| 亚洲欧美日韩一区二区在线| 欧美日韩国产首页在线观看| 亚洲精品美女久久久久| 亚洲国产成人精品久久| 你懂的成人av| 亚洲毛片播放| 亚洲最新色图| 国产精品视频免费在线观看| 欧美一区二区在线看| 中文日韩欧美| 这里是久久伊人| 久久精品卡一| 亚洲国产片色| 亚洲精品美女久久7777777| 欧美区日韩区| 香港成人在线视频| 久久精品网址| 一本一本a久久| 香蕉av777xxx色综合一区| 韩国精品主播一区二区在线观看| 欧美高清视频免费观看| 欧美男人的天堂| 欧美一区二视频在线免费观看| 久久久久国产精品厨房| 亚洲精品日韩精品| 亚洲欧美国产高清| 亚洲黄色高清| 亚洲影视综合| 91久久在线| 亚洲在线视频一区| 亚洲国产欧美一区二区三区丁香婷| 亚洲精品欧美日韩专区| 国产精品视频免费观看| 欧美国产日韩亚洲一区| 欧美三级在线视频| 久久综合伊人77777尤物| 欧美日韩1区2区| 男人的天堂亚洲在线| 欧美揉bbbbb揉bbbbb| 久久综合五月| 国产精品久久久久aaaa九色| 久久野战av| 国产精品青草综合久久久久99| 老司机精品久久| 国产精品美女久久久久久免费| 欧美激情视频一区二区三区不卡| 国产精品久久久对白| 亚洲激情偷拍| 在线观看国产日韩| 香蕉久久夜色精品国产| 一区二区三区国产在线| 久久综合国产精品| 久久不射电影网| 欧美小视频在线| 亚洲国产日韩一区二区| 一区二区亚洲| 欧美在线视屏| 欧美综合国产精品久久丁香| 欧美日韩国产不卡| 在线观看欧美激情| 亚洲一区三区电影在线观看| 亚洲日本视频| 久久亚洲春色中文字幕久久久| 欧美一区二区高清| 国产精品久久久久久久久借妻 | 久久久久久久久久码影片| 亚洲小视频在线观看| 欧美激情五月| 亚洲人体一区| 99re这里只有精品6| 欧美r片在线| 欧美成人午夜| 亚洲高清视频一区| 久久婷婷国产综合国色天香| 久久九九99视频| 国产视频久久久久| 欧美一区二区三区免费视| 午夜精品视频一区| 国产乱人伦精品一区二区| 一区二区高清视频| 欧美在线中文字幕| 一区二区三区我不卡| 久久永久免费| 亚洲日韩第九十九页| 亚洲一区二区视频在线| 国产精品高精视频免费| 亚洲男女自偷自拍| 美女国内精品自产拍在线播放| 在线日韩av片| 欧美日韩另类字幕中文| 亚洲一区免费观看| 玖玖玖国产精品| 日韩视频三区| 国产精品尤物| 美女露胸一区二区三区| 亚洲青涩在线| 欧美在线免费一级片| 影音先锋亚洲视频| 欧美日韩在线一二三| 久久gogo国模啪啪人体图| 亚洲大胆女人| 欧美一区二区三区四区在线观看| 极品少妇一区二区| 欧美日韩亚洲一区二区三区在线| 亚洲免费在线观看| 亚洲国产精品毛片| 久久国产一区二区三区| 亚洲精选视频免费看| 国产精品在线看| 欧美91视频| 欧美中文字幕在线播放| 亚洲精品欧美日韩专区| 久久女同精品一区二区| 一本一本久久a久久精品综合妖精| 国产欧美一区二区三区视频| 男女精品视频| 久久精品久久综合| 亚洲午夜激情免费视频| 亚洲国产欧洲综合997久久| 久久久久久自在自线| 国产精品99久久99久久久二8 | 国产在线视频欧美| 欧美久久成人| 久久人人超碰| 亚欧成人在线| 亚洲综合激情| 亚洲欧洲日韩在线| 在线看国产一区| 国产精品一卡二|