最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

關(guān)系型數(shù)據(jù)庫的設(shè)計(jì)規(guī)則詳解

 更新時(shí)間:2021年12月09日 09:31:48   作者:感謝狂神說  
大家好,本篇文章主要講的是關(guān)系型數(shù)據(jù)庫的設(shè)計(jì)規(guī)則詳解,感興趣的同學(xué)趕快來看一看吧,對你有幫助的話記得收藏一下,方便下次瀏覽

E-R(Entity-relationship,實(shí)體-聯(lián)系)模型中有三個(gè)主要概念是:實(shí)體集、屬性、聯(lián)系集。

一個(gè)實(shí)體集(class)對應(yīng)于數(shù)據(jù)庫中的一個(gè)表,一個(gè)實(shí)體(instance)則對應(yīng)數(shù)據(jù)庫表中的一行,也稱一條記錄。一個(gè)屬性對應(yīng)于數(shù)據(jù)庫表中的一列(column),也稱一個(gè)字段。

ORM思想(Object Relational Mapping)體現(xiàn):

數(shù)據(jù)庫表 ? Java或Python的一個(gè)類

表中的一條數(shù)據(jù) ? 類中的一個(gè)對象(或?qū)嶓w)

表中的一個(gè)類 ? 類中的一個(gè)字段、屬性(field)

表關(guān)系設(shè)計(jì)

表與表之間的數(shù)據(jù)記錄有關(guān)系(relationship)?,F(xiàn)實(shí)世界中的各種實(shí)體以及實(shí)體之間的各種聯(lián)系均用關(guān)系模型來表示。表關(guān)系的四種:

1、一對一關(guān)聯(lián)(one-to-one)

在實(shí)際的開發(fā)中應(yīng)用不多,因?yàn)橐粚σ豢梢詣?chuàng)建成一張表。

舉例:設(shè)計(jì)學(xué)生表:學(xué)號、姓名、手機(jī)號碼、班級、系別、身份證號碼、家庭住址、籍貫、緊急聯(lián)系人、…

拆為兩個(gè)表:兩個(gè)表的記錄是一一對應(yīng)關(guān)系。

基礎(chǔ)信息表(常用信息):學(xué)號、姓名、手機(jī)號碼、班級、系別檔案信息表(不常用信息):學(xué)號、身份證號碼、家庭住址、籍貫、緊急聯(lián)系人、…兩種建表原則: 外鍵唯一:主表的主鍵和從表的外鍵(唯一),形成主外鍵關(guān)系,外鍵唯一。外鍵是主鍵:主表的主鍵和從表的主鍵,形成主外鍵關(guān)系。

在這里插入圖片描述

2、一對多關(guān)系(one-to-many)

常見實(shí)例場景:客戶表和訂單表,分類表和商品表部門表和員工表

舉例: 員工表:編號、姓名、…、所屬部門部門表:編號、名稱、簡介 一對多建表原則:在從表(多方)創(chuàng)建一個(gè)字段,字段作為外鍵指向主表(一方)的主鍵

在這里插入圖片描述

3、多對多(many-to-many)

要表示多對多關(guān)系,必須創(chuàng)建第三個(gè)表,該表通常稱為聯(lián)接表,它將多對多關(guān)系劃分為兩個(gè)一對多關(guān)系。將這兩個(gè)表的主鍵都插入到第三個(gè)表中。

舉例1:學(xué)生-課程

在這里插入圖片描述

學(xué)生信息表:一行代表一個(gè)學(xué)生的信息(學(xué)號、姓名、手機(jī)號碼、班級、系別…)

課程信息表:一行代表一個(gè)課程的信息(課程編號、授課老師、簡介…)

選課信息表:一個(gè)學(xué)生可以選多門課,一門課可以被多個(gè)學(xué)生選擇

學(xué)號     課程編號  
1        1001
2        1001
1        1002

舉例2:產(chǎn)品-訂單

“訂單”表和“產(chǎn)品”表有一種多對多的關(guān)系,這種關(guān)系是通過與“訂單明細(xì)”表建立兩個(gè)一對多關(guān)系來定義的。一個(gè)訂單可以有多個(gè)產(chǎn)品,每個(gè)產(chǎn)品可以出現(xiàn)在多個(gè)訂單中。

產(chǎn)品表:“產(chǎn)品”表中的每條記錄表示一個(gè)產(chǎn)品。訂單表:“訂單”表中的每條記錄表示一個(gè)訂單。訂單明細(xì)表:每個(gè)產(chǎn)品可以與“訂單”表中的多條記錄對應(yīng),即出現(xiàn)在多個(gè)訂單中。一個(gè)訂單可以與“產(chǎn)品”表中的多條記錄對應(yīng),即包含多個(gè)產(chǎn)品。

舉例3:用戶-角色

多對多關(guān)系建表原則:需要?jiǎng)?chuàng)建第三張表,中間表中至少兩個(gè)字段,這兩個(gè)字段分別作為外鍵指向各自一方的主鍵。

4、自我引用(Self reference)

[外鏈圖片轉(zhuǎn)存失敗,源站可能有防盜鏈機(jī)制,建議將圖片保存下來直接上傳(img-wHvZaTHI-1638892870457)(images/image-20210914235651997.png)]

到此這篇關(guān)于關(guān)系型數(shù)據(jù)庫的設(shè)計(jì)規(guī)則詳解的文章就介紹到這了,更多相關(guān)關(guān)系型數(shù)據(jù)庫設(shè)計(jì)規(guī)則內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 一步步教你使用Navicat工具創(chuàng)建MySQL數(shù)據(jù)庫連接

    一步步教你使用Navicat工具創(chuàng)建MySQL數(shù)據(jù)庫連接

    Navicat是一套快速、可靠并價(jià)格相當(dāng)便宜的數(shù)據(jù)庫管理工具,專為簡化數(shù)據(jù)庫的管理及降低系統(tǒng)管理成本而設(shè),下面這篇文章主要給大家介紹了關(guān)于如何使用Navicat工具創(chuàng)建MySQL數(shù)據(jù)庫連接的相關(guān)資料,需要的朋友可以參考下
    2023-03-03
  • clickhouse數(shù)據(jù)庫刪除數(shù)據(jù)的五種方式

    clickhouse數(shù)據(jù)庫刪除數(shù)據(jù)的五種方式

    clickhouse數(shù)據(jù)庫清理數(shù)據(jù)的方式很多,每種方式都各有自己的優(yōu)缺點(diǎn),請根據(jù)實(shí)際需要采用適合自己的方式,本文將逐一給大家介紹,并通過代碼示例講解的非常詳細(xì),需要的朋友可以參考下
    2024-03-03
  • pymysql如何解決sql注入問題深入講解

    pymysql如何解決sql注入問題深入講解

    這篇文章主要給大家介紹了關(guān)于pymysql如何解決sql注入問題的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-01-01
  • SQL數(shù)據(jù)庫語句大全

    SQL數(shù)據(jù)庫語句大全

    本篇文章詳細(xì)整理了Access、MySQL以及SQL?Server三種數(shù)據(jù)庫語句。對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-12-12
  • 達(dá)夢數(shù)據(jù)庫DISQL連接數(shù)據(jù)庫與執(zhí)行SQL、腳本的方法圖文詳解

    達(dá)夢數(shù)據(jù)庫DISQL連接數(shù)據(jù)庫與執(zhí)行SQL、腳本的方法圖文詳解

    DIsql是DM數(shù)據(jù)庫的一個(gè)命令行客戶端工具,跟Oracle數(shù)據(jù)庫的sqlplus工具一樣,用來與?DM?數(shù)據(jù)庫服務(wù)器進(jìn)行交互,這篇文章主要給大家介紹了關(guān)于達(dá)夢數(shù)據(jù)庫DISQL連接數(shù)據(jù)庫與執(zhí)行SQL、腳本的方法,需要的朋友可以參考下
    2024-09-09
  • SQL服務(wù)器面臨的危險(xiǎn)和補(bǔ)救.讀[十種方法]后感.

    SQL服務(wù)器面臨的危險(xiǎn)和補(bǔ)救.讀[十種方法]后感.

    SQL服務(wù)器面臨的危險(xiǎn). 危險(xiǎn):沒有防火墻保護(hù),暴露在公網(wǎng)中. 后果:SQL蠕蟲感染和黑客進(jìn)行拒絕服務(wù)攻擊、緩存溢出、SQL盲注和其它攻擊. 補(bǔ)救:安裝一款防火墻,即使經(jīng)費(fèi)有限,網(wǎng)上也有大把的免費(fèi)產(chǎn)品.
    2008-05-05
  • Access數(shù)據(jù)庫升級為SQL數(shù)據(jù)庫的注意事項(xiàng)和方法

    Access數(shù)據(jù)庫升級為SQL數(shù)據(jù)庫的注意事項(xiàng)和方法

    Access數(shù)據(jù)庫升級為SQL數(shù)據(jù)庫的注意事項(xiàng)和方法...
    2007-02-02
  • sqlserver和oracle中對datetime進(jìn)行條件查詢的一點(diǎn)區(qū)別小結(jié)

    sqlserver和oracle中對datetime進(jìn)行條件查詢的一點(diǎn)區(qū)別小結(jié)

    系統(tǒng)中涉及公文列表的部分,需要支持對時(shí)間列的搜索功能,但必須要同時(shí)支持sqlserver和oracle兩種數(shù)據(jù)庫,而這在這兩種數(shù)據(jù)庫中編寫查詢語句的時(shí)候有一些不大一樣的地方,無法實(shí)現(xiàn)一條語句實(shí)現(xiàn)兩個(gè)數(shù)據(jù)庫的正常查詢,所以需要做一些調(diào)整。
    2009-06-06
  • NoSQL開篇之為什么要使用NoSQL

    NoSQL開篇之為什么要使用NoSQL

    NoSQL在2010年風(fēng)生水起,大大小小的Web站點(diǎn)在追求高性能高可靠性方面,不由自主都選擇了NoSQL技術(shù)作為優(yōu)先考慮的方面
    2016-02-02
  • SQL實(shí)現(xiàn)分頁查詢方法總結(jié)

    SQL實(shí)現(xiàn)分頁查詢方法總結(jié)

    這篇文章介紹了SQL實(shí)現(xiàn)分頁查詢方法總結(jié),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-12-12

最新評論

永胜县| 古交市| 财经| 武宣县| 南平市| 苏尼特左旗| 阳朔县| 修文县| 保康县| 昆山市| 甘肃省| 留坝县| 开封县| 都安| 富顺县| 望江县| 卓尼县| 宜春市| 敖汉旗| 泸州市| 英超| 渝中区| 福州市| 礼泉县| 北宁市| 镇巴县| 永吉县| 永城市| 班戈县| 土默特左旗| 灵宝市| 黄平县| 滦南县| 大连市| 红安县| 姚安县| 晋城| 嘉荫县| 长宁县| 惠水县| 定日县|