色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
电子发烧友
开通电子发烧友VIP会员 尊享10大特权
海量资料免费下载
精品直播免费看
优质内容免费畅学
课程9折专享价
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

Qt學(xué)習(xí)筆記之?dāng)?shù)據(jù)庫結(jié)構(gòu)設(shè)計(jì)1

jf_78858299 ? 來源:紛紜雜談 ? 作者:CY_CHEN ? 2023-02-17 11:25 ? 次閱讀

一、數(shù)據(jù)庫

1、數(shù)據(jù)庫概述

2、數(shù)據(jù)庫操作語句

二、Qt SQL簡介

1、 Qt SQL對數(shù)據(jù)庫支持

2、SQLite數(shù)據(jù)庫初識

3、 Qt SQL模塊數(shù)據(jù)庫類接口

**一、數(shù)據(jù)庫

**

1、概述

數(shù)據(jù)庫也是應(yīng)用程序的重要部分,一個(gè)完整的應(yīng)用程序幾乎都包含數(shù)據(jù)庫。

當(dāng)前主流的數(shù)據(jù)庫有DB2、MYSQL、OCI、ODBC、SQLITE、TDS、Oracle。

Sqlite是一款輕型的數(shù)據(jù)庫,它的設(shè)計(jì)目標(biāo)是嵌入式,方便我們使用。

2、數(shù)據(jù)庫操作語句

語句:

SELECT * FROM menu WHERE id>20

INSERT INTO menu VALUES(102, HELLO)

DELETE FROM menu WHERE name="wj"

UPDATE menu SET name="weijie"

二、Qt SQL簡介

1、Qt SQL對數(shù)據(jù)庫支持

在Qt中,Qt為SQL數(shù)據(jù)庫提供支持的基本模塊。Qt SQL的API分為不同的層:

·驅(qū)動層

·SQL API層

·用戶接口層

(1)驅(qū)動層

對于Qt是基于C++來實(shí)現(xiàn)的框架,該層主要包括QSqlDriver,QSqlDriverCreator,QSqlDriverCreatorBase,QSqlDriverPlugin,and QSqlResult。這一層提供了特定數(shù)據(jù)庫和SQL API層之間的底層橋梁。

(2)SQL API層

對于SQL API層提供了數(shù)據(jù)庫的訪問相關(guān)類,其中,QSqlDatabase類進(jìn)行連接,QSqlQuery可以完成與數(shù)據(jù)庫的交互。除此之外,還提供了QSqlError,QSqlField,QSqlIndex,and SQqlRecord類。

(3)用戶接口層

用戶接口層的幾個(gè)類實(shí)現(xiàn)了將數(shù)據(jù)庫中的數(shù)據(jù)鏈接到窗口部件上,這些類是使用模型/視圖框架實(shí)現(xiàn)的,他們是更高層次的抽象,主要包括QSqlQueryModel,QSqlTableModel,and QSqlRelationTableModel。

2、SQLite數(shù)據(jù)庫初識

對于數(shù)據(jù)庫操作流程主要分為:

第一步:在項(xiàng)目管理文件(.pro)中,增加數(shù)據(jù)庫模塊

QT += core gui sql

第二步:查看Qt對數(shù)據(jù)庫的驅(qū)動的類型的支持

QStringList drivers = QSqlDatabase::drivers();//獲取到qt中所支持的數(shù)據(jù)庫驅(qū)動類型


foreach(QString driver,drivers)
{
    qDebug() << driver;
}

第三步:連接和打開數(shù)據(jù)庫

db = QSqlDatabase::addDatabase("QSQLITE");  //QSQLITE----他來告訴系統(tǒng),連接的數(shù)據(jù)庫是sqlite3數(shù)據(jù)庫
                                                //連接成功,返回一個(gè)數(shù)據(jù)庫對象(QSqlDatabase)
    db.setDatabaseName("test.db");    //設(shè)置數(shù)據(jù)庫名,數(shù)據(jù)庫文件后綴為.db
    db.setUserName("admin");          //設(shè)置數(shù)據(jù)庫用戶名
    db.setPassword("admin");          //設(shè)置數(shù)據(jù)庫密碼
    //如果想要進(jìn)一步操作數(shù)據(jù)庫,那么就必須進(jìn)行數(shù)據(jù)庫打開操作
    if (!db.open())
    {
        qDebug()<<"Error failed to open" <<db.lastError();
        return false;
    }
    else
    {
        qDebug() << "open success";
    }

第四步:訪問數(shù)據(jù)庫

訪問數(shù)據(jù)庫的操作主要包括:

(1)創(chuàng)建表;

(2)向數(shù)據(jù)庫表中插入數(shù)據(jù);

(3)刪除數(shù)據(jù);

(4)更新數(shù)據(jù);

(5)查詢數(shù)據(jù)。

對于數(shù)據(jù)庫中的表,通常只需要創(chuàng)建一次,而其他的操作是可以重復(fù)。

(1)創(chuàng)建表

QSqlQuery query;//在創(chuàng)建該對象時(shí),系統(tǒng)會自動完成跟數(shù)據(jù)庫的關(guān)聯(lián)
//定義一個(gè)創(chuàng)建表的sql語句    表名:staff    表中的字段:id    name    age
QString sqlCreate = "create table staff(id integer primary key autoincrement,"
                        "name varchar(20),"
                        "age int);";
query.exec(sqlCreate);

使用圖形化工具查看的程序結(jié)果:

圖片

(2)向數(shù)據(jù)庫表中插入數(shù)據(jù)

插入操作語法:

INSERT INTO TABLE_NAME(column1, column2, column3,...columnN) VALUES (value1, value2, value3,...valueN)

INSERT INTO ------關(guān)鍵字

TABLE_NAME ------表名

VALUES -------關(guān)鍵字

插入數(shù)據(jù)操作實(shí)例:

//插入操作
QString sqlInset = QString("insert into staff(name,age) values('張三',20);");
if(!query.exec(sqlInset))
{
    qDebug() << "insert data error" << db.lastError();
}

(3)刪除數(shù)據(jù)

數(shù)據(jù)庫刪除操作:

基本語法:

DELETE FROM table_name WHERE [condition]

DELETE FROM ---- 關(guān)鍵字

table_name ---- 表名

WHERE ---- 條件的關(guān)鍵字

[condition] ---- 條件表達(dá)式

刪除數(shù)據(jù)操作實(shí)例

//刪除操作
QString sqlDelete = QString("DELETE FROM staff where id = 2;");
if(!query.exec(sqlDelete))
{
    qDebug() << "delete data error" << db.lastError();
}

(4)更新數(shù)據(jù)

數(shù)據(jù)庫更新操作:

基本語法:

UPDATE table_name SET column1 = value1, column2 = value2,...,column = valueN WHERE [condition];

UPDATE ---- 關(guān)鍵字

Table_name ----表名

SET -----關(guān)鍵字

column1 = value1 ------- 要修改的字段名和所對應(yīng)的值

WHERE ----- 條件的關(guān)鍵字

[condition] --- 條件表達(dá)式

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • 嵌入式
    +關(guān)注

    關(guān)注

    5125

    文章

    19438

    瀏覽量

    313196
  • 數(shù)據(jù)庫
    +關(guān)注

    關(guān)注

    7

    文章

    3884

    瀏覽量

    65584
  • MySQL
    +關(guān)注

    關(guān)注

    1

    文章

    840

    瀏覽量

    27344
收藏 0人收藏

    評論

    相關(guān)推薦

    數(shù)據(jù)庫系統(tǒng)是什么?數(shù)據(jù)庫系統(tǒng)概念數(shù)據(jù)庫設(shè)計(jì)資料免費(fèi)下載

      什么是概念結(jié)構(gòu)設(shè)計(jì)1.將需求分析得到的用戶需求抽象為信息結(jié)構(gòu)即概念模型的過程就是概念結(jié)構(gòu)設(shè)計(jì)2.概念結(jié)構(gòu)是各種
    發(fā)表于 09-07 14:34 ?1次下載
    <b class='flag-5'>數(shù)據(jù)庫</b>系統(tǒng)是什么?<b class='flag-5'>數(shù)據(jù)庫</b>系統(tǒng)概念<b class='flag-5'>之</b><b class='flag-5'>數(shù)據(jù)庫</b>設(shè)計(jì)資料免費(fèi)下載

    如何進(jìn)行數(shù)據(jù)庫設(shè)計(jì)?數(shù)據(jù)庫設(shè)計(jì)介紹和需求分析及結(jié)構(gòu)設(shè)計(jì)資料概述

    數(shù)據(jù)庫設(shè)計(jì)的任務(wù)是指根據(jù)需求研制數(shù)據(jù)庫結(jié)構(gòu)并應(yīng)用 數(shù)據(jù)庫的過程。數(shù)據(jù)庫設(shè)計(jì)內(nèi)容包括數(shù)據(jù)庫
    發(fā)表于 09-13 17:05 ?0次下載
    如何進(jìn)行<b class='flag-5'>數(shù)據(jù)庫</b>設(shè)計(jì)?<b class='flag-5'>數(shù)據(jù)庫</b>設(shè)計(jì)介紹和需求分析及<b class='flag-5'>結(jié)構(gòu)設(shè)計(jì)</b>資料概述

    如何使用PowerDesigner進(jìn)行數(shù)據(jù)庫靜態(tài)結(jié)構(gòu)設(shè)計(jì)?詳細(xì)資料概述

    把用戶需求抽象為概念模型即為概念結(jié)構(gòu)設(shè)計(jì)。 概念模型除了要求能反映客觀世界并且易于理解外,還要求其易于向數(shù)據(jù)模型(如關(guān)系模型)轉(zhuǎn)化。 概念模型獨(dú)立于具體的數(shù)據(jù)庫系統(tǒng),是整個(gè)數(shù)據(jù)庫設(shè)
    發(fā)表于 09-13 17:05 ?0次下載
    如何使用PowerDesigner進(jìn)行<b class='flag-5'>數(shù)據(jù)庫</b>靜態(tài)<b class='flag-5'>結(jié)構(gòu)設(shè)計(jì)</b>?詳細(xì)資料概述

    數(shù)據(jù)庫靜態(tài)結(jié)構(gòu)如何設(shè)計(jì)?詳細(xì)資料任務(wù)和方法說明

    任務(wù):實(shí)現(xiàn)數(shù)據(jù)庫設(shè)計(jì)新奧爾良方法中概念結(jié)構(gòu)設(shè)計(jì)和邏輯結(jié)構(gòu)設(shè)計(jì)
    發(fā)表于 09-27 15:32 ?1次下載
    <b class='flag-5'>數(shù)據(jù)庫</b>靜態(tài)<b class='flag-5'>結(jié)構(gòu)</b>如何設(shè)計(jì)?詳細(xì)資料任務(wù)和方法說明

    數(shù)據(jù)庫教程之如何進(jìn)行數(shù)據(jù)庫設(shè)計(jì)

    本文檔的主要內(nèi)容詳細(xì)介紹的是數(shù)據(jù)庫教程之如何進(jìn)行數(shù)據(jù)庫設(shè)計(jì)內(nèi)容包括了:1 數(shù)據(jù)庫設(shè)計(jì)概述 ,2 數(shù)據(jù)庫需求分析 ,3
    發(fā)表于 10-19 10:41 ?21次下載
    <b class='flag-5'>數(shù)據(jù)庫</b>教程之如何進(jìn)行<b class='flag-5'>數(shù)據(jù)庫</b>設(shè)計(jì)

    數(shù)據(jù)庫設(shè)計(jì)的七大知識點(diǎn)總結(jié)詳細(xì)資料免費(fèi)下載

    本文檔的主要內(nèi)容詳細(xì)介紹的是數(shù)據(jù)庫設(shè)計(jì)的七大知識點(diǎn)總結(jié)包括了:1 數(shù)據(jù)庫設(shè)計(jì)概述2 需求分析3 概念結(jié)構(gòu)設(shè)計(jì)4 邏輯結(jié)構(gòu)設(shè)計(jì)5
    發(fā)表于 10-19 10:41 ?0次下載
    <b class='flag-5'>數(shù)據(jù)庫</b>設(shè)計(jì)的七大知識點(diǎn)總結(jié)詳細(xì)資料免費(fèi)下載

    數(shù)據(jù)庫學(xué)習(xí)入門資料如何進(jìn)行數(shù)據(jù)庫設(shè)計(jì)

    本文檔的主要內(nèi)容詳細(xì)介紹的是數(shù)據(jù)庫學(xué)習(xí)入門資料如何進(jìn)行數(shù)據(jù)庫設(shè)計(jì)主要內(nèi)容包括了:數(shù)據(jù)庫系統(tǒng)設(shè)計(jì)的1
    發(fā)表于 10-25 16:29 ?14次下載
    <b class='flag-5'>數(shù)據(jù)庫</b><b class='flag-5'>學(xué)習(xí)</b>入門資料<b class='flag-5'>之</b>如何進(jìn)行<b class='flag-5'>數(shù)據(jù)庫</b>設(shè)計(jì)

    數(shù)據(jù)庫學(xué)習(xí)入門資料數(shù)據(jù)庫的概念結(jié)構(gòu)詳細(xì)資料概述

    什么是概念結(jié)構(gòu)設(shè)計(jì) 將需求分析得到的用戶需求抽象為信息結(jié)構(gòu)即概念模型的過程就是概念結(jié)構(gòu)設(shè)計(jì) 概念結(jié)構(gòu)是各種數(shù)據(jù)模型的共同基礎(chǔ),它比
    發(fā)表于 10-25 16:29 ?0次下載
    <b class='flag-5'>數(shù)據(jù)庫</b><b class='flag-5'>學(xué)習(xí)</b>入門資料<b class='flag-5'>之</b><b class='flag-5'>數(shù)據(jù)庫</b>的概念<b class='flag-5'>結(jié)構(gòu)</b>詳細(xì)資料概述

    數(shù)據(jù)庫概念結(jié)構(gòu)是如何設(shè)計(jì)的概念結(jié)構(gòu)設(shè)計(jì)資料概述

    本文檔的主要內(nèi)容詳細(xì)介紹的是數(shù)據(jù)庫概念結(jié)構(gòu)是如何設(shè)計(jì)的概念結(jié)構(gòu)設(shè)計(jì)資料概述主要內(nèi)容包括了:1 概念結(jié)構(gòu)2 概念
    發(fā)表于 10-26 11:49 ?22次下載
    <b class='flag-5'>數(shù)據(jù)庫</b>概念<b class='flag-5'>結(jié)構(gòu)</b>是如何設(shè)計(jì)的概念<b class='flag-5'>結(jié)構(gòu)設(shè)計(jì)</b>資料概述

    數(shù)據(jù)庫的設(shè)計(jì)概念總結(jié)

    本文檔的主要內(nèi)容詳細(xì)介紹的是數(shù)據(jù)庫的設(shè)計(jì)概念總結(jié)主要內(nèi)容包括了:1.數(shù)據(jù)庫設(shè)計(jì)概述,2.需求分析,3.概念結(jié)構(gòu)設(shè)計(jì),4.邏輯結(jié)構(gòu)設(shè)計(jì),5.
    發(fā)表于 01-09 17:29 ?13次下載
    <b class='flag-5'>數(shù)據(jù)庫</b>的設(shè)計(jì)概念總結(jié)

    數(shù)據(jù)庫設(shè)計(jì)開發(fā)案例教程之數(shù)據(jù)庫設(shè)計(jì)的資料介紹

    本文檔的主要內(nèi)容詳細(xì)介紹的是數(shù)據(jù)庫設(shè)計(jì)開發(fā)案例教程之數(shù)據(jù)庫設(shè)計(jì)的資料介紹主要內(nèi)容包括了:1 數(shù)據(jù)庫設(shè)計(jì)概述,2 需求分析,3 概念結(jié)構(gòu)設(shè)計(jì)
    發(fā)表于 01-11 11:20 ?17次下載
    <b class='flag-5'>數(shù)據(jù)庫</b>設(shè)計(jì)開發(fā)案例教程之<b class='flag-5'>數(shù)據(jù)庫</b>設(shè)計(jì)的資料介紹

    Qt學(xué)習(xí)筆記數(shù)據(jù)庫結(jié)構(gòu)設(shè)計(jì)2

    數(shù)據(jù)庫也是應(yīng)用程序的重要部分,一個(gè)完整的應(yīng)用程序幾乎都包含數(shù)據(jù)庫。 當(dāng)前主流的數(shù)據(jù)庫有DB2、MYSQL、OCI、ODBC、SQLITE、TDS、Oracle。 Sqlite是一款輕型的
    的頭像 發(fā)表于 02-17 11:25 ?659次閱讀
    <b class='flag-5'>Qt</b><b class='flag-5'>學(xué)習(xí)</b><b class='flag-5'>筆記</b><b class='flag-5'>之</b><b class='flag-5'>數(shù)據(jù)庫</b><b class='flag-5'>結(jié)構(gòu)設(shè)計(jì)</b>2

    Qt學(xué)習(xí)筆記數(shù)據(jù)庫結(jié)構(gòu)設(shè)計(jì)5

    Qt中,Qt為SQL數(shù)據(jù)庫提供支持的基本模塊。Qt SQL的API分為不同的層: ·驅(qū)動層 ·SQL API層 ·用戶接口層
    的頭像 發(fā)表于 02-17 13:56 ?954次閱讀
    <b class='flag-5'>Qt</b><b class='flag-5'>學(xué)習(xí)</b><b class='flag-5'>筆記</b><b class='flag-5'>之</b><b class='flag-5'>數(shù)據(jù)庫</b><b class='flag-5'>結(jié)構(gòu)設(shè)計(jì)</b>5

    Qt學(xué)習(xí)筆記數(shù)據(jù)庫結(jié)構(gòu)設(shè)計(jì)6

    Qt中,Qt為SQL數(shù)據(jù)庫提供支持的基本模塊。Qt SQL的API分為不同的層: ·驅(qū)動層 ·SQL API層 ·用戶接口層
    的頭像 發(fā)表于 02-17 13:57 ?642次閱讀
    <b class='flag-5'>Qt</b><b class='flag-5'>學(xué)習(xí)</b><b class='flag-5'>筆記</b><b class='flag-5'>之</b><b class='flag-5'>數(shù)據(jù)庫</b><b class='flag-5'>結(jié)構(gòu)設(shè)計(jì)</b>6

    Qt學(xué)習(xí)筆記數(shù)據(jù)庫結(jié)構(gòu)設(shè)計(jì)7

    Qt中,Qt為SQL數(shù)據(jù)庫提供支持的基本模塊。Qt SQL的API分為不同的層: ·驅(qū)動層 ·SQL API層 ·用戶接口層
    的頭像 發(fā)表于 02-17 13:57 ?641次閱讀
    <b class='flag-5'>Qt</b><b class='flag-5'>學(xué)習(xí)</b><b class='flag-5'>筆記</b><b class='flag-5'>之</b><b class='flag-5'>數(shù)據(jù)庫</b><b class='flag-5'>結(jié)構(gòu)設(shè)計(jì)</b>7
    主站蜘蛛池模板: 18禁止观看免费私人影院 | 丰满人妻熟女色情A片 | 在线看片韩国免费人成视频 | 97人妻中文字幕免费视频 | 黄色日本女人 | 久久亚洲伊人 | 99青草青草久热精品视频 | 成人毛片免费观看视频大全 | a国产成人免费视频 | 小雪奶水涨翁工帮吸的推荐语录 | 免费精品美女久久久久久久久久 | 青青草原直播 | 天天狠狠色噜噜 | 成人在线观看视频免费 | 成年女人免费播放影院 | 久久免费国产 | 日韩亚洲人成在线 | 张开腿我尝尝你的草莓 | 2020年国产精品午夜福利在线观看 | 亚洲爆乳少妇精品无码专区 | 老头操美女 | 欧美最猛黑人AAAAA片 | 久久国产精品人妻中文 | 99在线精品国自产拍 | 亚洲国产精品线在线观看 | 91精品一区二区三区在线观看 | 97人妻无码AV碰碰视频 | 99视频在线免费看 | 性色香蕉AV久久久天天网 | 亚洲国产精麻豆 | 美娇妻的性奴史1一4 | 最近中文字幕MV免费高清在线 | 高清视频在线观看SEYEYE | 国产午夜精品鲁丝片 | 日本护士喷水 | 好看AV中文字幕在线观看 | 中文在线观看 | 午夜天堂一区人妻 | 日本免费无码A专区在线观看 | 久久午夜免费视频 | 99在线在线视频观看 |

    電子發(fā)燒友

    中國電子工程師最喜歡的網(wǎng)站

    • 2931785位工程師會員交流學(xué)習(xí)
    • 獲取您個(gè)性化的科技前沿技術(shù)信息
    • 參加活動獲取豐厚的禮品