Heim Datenbank MySQL-Tutorial 关系数据库设计

关系数据库设计

Jun 07, 2016 pm 03:47 PM
关系 基本 数据 数据库 规范 设计

1. 基本设计规范 构造数据 库 必 须 遵循一定的 规则 。在 关 系数据 库 中, 这种规则 就是范式。范式是符合某一 种级别 的 关 系模式的集合。 关 系数据 库 中的 关 系必 须满 足一定的要求,即 满 足不同的范式。目前 关 系数据 库 有六 种 范式:第一范

1.基本设计规范

构造数据遵循一定的规则。在系数据中,这种规则就是范式。范式是符合某一种级别系模式的集合。系数据中的系必须满足一定的要求,即足不同的范式。目前系数据有六范式:第一范式(1NF)、第二范式(2NF)、第三范式(3NF)、第四范式(4NF)、第五范式(5NF)和第六范式(6NF)。足最低要求的范式是第一范式(1NF)。在第一范式的基步满足更多要求的称第二范式(2NF),其余范式以次推。一般来,数据只需足第三范式(3NF)就行了。下面我们举例介第一范式(1NF)、第二范式(2NF)和第三范式(3NF)。

1.1 第一范式(1NF

在任何一个关系数据库中,第一范式(1NF)是对关系模式的基本要求,不满足第一范式(1NF)的数据库就不是关系数据库。所谓第一范式(1NF)是指数据库表的每一列都是不可分割的基本数据项,同一列中不能有多个值,即实体中的某个属性不能有多个值或者不能有重复的属性。如果出现重复的属性,就可能需要定义一个新的实体,新的实体由重复的属性构成,新实体与原实体之间为一对多关系。在第一范式(1NF)中表的每一行只包含一个实例的信息。例如,职工号,姓名,电话号码组成一个“员工信息表”(一个人可能有一个办公室电话和一个家里电话号码),不能将员工信息都放在一列中显示,也不能将其中的两列或多列在一列中显示;员工信息表的每一行只表示一个员工的信息,一个员工的信息在表中只出现一次。

按照1NF采取三方法进行规范:

一是重储职工号和姓名。这样关键字只能是电话
二是工号为关键字,电话为单电话和住宅电话两个属性
三是工号为关键字,但记录只能有一个电话
以上三个方法,第一方法最不可取,按实际情况取后两情况。

而言之,第一范式就是无重的列。

1.2 第二范式(2NF

第二范式(2NF)是在第一范式(1NF)的基上建立起来的,即足第二范式(2NF)必足第一范式(1NF)。第二范式(2NF)要求数据表中的例或行必可以被唯一地区分。为实现区分通常需要表加上一个列,以存各个例的唯一标识。例如在工信息表中加上了号(emp_id)列,因为每工的号是唯一的,因此工可以被唯一区分。个唯一属性列被称关键字或主、主。第二范式(2NF)要求体的属性完全依于主关键字。所完全依是指不能存在关键字一部分的属性,如果存在,那么这个属性和主关键字的一部分应该分离出来形成一个新的体,新体与原体之是一多的系。为实现区分通常需要表加上一个列,以存各个例的唯一标识

例如:假定选课关系表SelectCourse包含(学号, 姓名, , 程名称, , 学分)字段,关键为组关键(学号, 程名称),因存在如下决定系:

   (学号, 程名称) → (姓名, , , 学分)

   个数据表不足第二范式,因存在如下决定系:

   (程名称) → (学分)

   (学号) → (姓名, )

   即存在关键字中的部分字段决定非关键字的情况。

   由于不符合2NF选课关系表会存在如下问题

   (1) 数据冗余:

   同一门课程由n个学生修,"学分"就重n-1次;同一个学生修了m门课程,姓名和年就重m-1次。

   (2) 更新异常:

   若整了某门课程的学分,数据表中所有行的"学分"都要更新,否会出同一门课程学分不同的情况。

   (3) 插入异常:

   假开设新的程,暂时还没有人修。这样,由于没有"学号"关键字,程名称和学分也无法记录入数据

   (4) 除异常:

   假一批学生已完成程的修,记录应该从数据表中除。但是,与此同程名称和学分信息也被除了。很然,也会致插入异常。

   要解决上述问题把选课关系表SelectCourse如下三个表:

   学生:Student(学号, 姓名, )

   程:Course(程名称, 学分)

   选课关系:SelectCourse(学号, 程名称, )

   这样的数据表是符合第二范式的,消除了数据冗余、更新异常、插入异常和除异常。

   另外,所有单关键字的数据表都符合第二范式,因不可能存在关键字。

而言之,第二范式就是非主属性非部分依于主关键字。

1.3 第三范式(3NF

足第三范式(3NF)必足第二范式(2NF)。在第二范式的基上,数据表中如果不存在非关键字段任一候选关键字段的传递函数依赖则符合第三范式。所谓传递函数依,指的是如果存在"A → B → C"的决定系,C传递函数依A。因此,足第三范式的数据应该不存在如下依赖关系:

   关键字段关键字段x → 关键字段y

   例如:假定学生系表Student(学号, 姓名, , 所在学院, 学院地点, 学院电话)关键为单关键"学号",因存在如下决定系:

   (学号) → (姓名, , 所在学院, 学院地点, 学院电话)

   个数据是符合2NF的,但是不符合3NF,因存在如下决定系:

   (学号) → (所在学院) → (学院地点, 学院电话)

   即存在非关键字段"学院地点""学院电话"对关键字段"学号"传递函数依

   它也会存在数据冗余、更新异常、插入异常和除异常的情况,者可自行分析得知。

   把学生系表分如下两个表:

   学生:(学号, 姓名, , 所在学院)

   学院:(学院, 地点, 电话)

   这样的数据表是符合第三范式的,消除了数据冗余、更新异常、插入异常和除异常。

而言之,第三范式就是属性不依于其它非主属性。第三范式(3NF)要求一个数据表中不包含已在其它表中已包含的非主关键字信息。例如,存在一个部信息表,其中个部有部门编号(dept_id)、部名称、部门简介等信息。那
工信息表中列出部门编号后就不能再将部名称、部门简介等与部的信息再加入工信息表中。如果不存在部信息表,根据第三范式(3NF)也应该构建它,否就会有大量的数据冗余。

 

1.4依斯-科得范式(BCNF

如果系模式RUF)的所有属性(包括主属性和非主属性)都不传递R的任何候选关键字,那R是属于BCNF的。或是系模式R,如果个决定因素都包含关键字(而不是被关键字所包含),RCNF系模式。
例:配件管理系模式 WPEWNOPNOENOQNT)分仓库号,配件号,工号,数量。有以下条件:

a.一个仓库有多个工。
b.
一个在一个仓库工作。
c.
仓库里一型号的配件由负责,但一个人可以管理几配件。
d.
同一型号的配件可以分放在几个仓库中。
分析:

由以上得 PNO 不能确定QNT,由合属性(WNOPNO)来决定,存在函数依WNOPNO -> ENO。由于仓库里的一配件由负责,而一个人可以管理几配件,所以有合属性(WNOPNO)才能确定负责人,有(WNOPNO-> ENO。因 一个在一个仓库工作,有ENO -> WNO。由于仓库里的一配件由负责,而一个在一个仓库工作,有(ENOPNO-> QNT

找一下候选关键字,因WNOPNO -> QNT,(WNOPNO-> ENO ,因此 (WNOPNO)可以决定整个元,是一个候选关键字。根据ENO->WNO,(ENOPNO->QNT,故(ENOPNO)也能决定整个元另一个候选关键字。属性ENOWNOPNO 主属性,只有一个非主属性QNT。它任何一个候选关键字都是完全函数依的,并且是直接依,所以该关系模式是3NF

分析一下主属性。因ENO->WNO,主属性ENOWNO的决定因素,但是它本身不是关键字,只是关键字的一部分。就造成主属性WNO另外一个候选关键字(ENOPNO)的部分依,因ENOPNO-> ENO但反来不成立,而P->WNO,故(ENOPNO-> WNO 也是传递

然没有非主属性选关键字传递,但存在主属性选关键字的传递,同也会来麻。如一个新工分配到仓库工作,但暂时处实习阶段,没有独立负责对某些配件的管理任。由于缺少关键字的一部分PNO而无法插入到该关系中去。又如某个人改成不管配件了去负责安全,除配件的同时该职工也会被除。
解决法:分成管理EPENOPNOQNT),关键字是(ENOPNO)工作EWENOWNO)其关键字是ENO
缺点:

分解后函数依的保持性差。如此例中,由于分解,函数依WNOPNO-> ENO 失了, 因而原来的语义有所破坏。没有体仓库里一部件由负责。有可能出一部件由两个人或两个以上的人来同管理。因此,分解之后的系模式降低了部分完整性束。

一个系分解成多个系,要使得分解有意,起的要求是分解后不失原来的信息。些信息不包括数据本身,而且包括由函数依所表示的数据之的相互制行分解的目是达到更高一范化程度,但是分解的同两个问题:无损联接性和保持函数依。有往往不可能做到既有无损联接性,又完全保持函数依。需要根据需要衡。

 

1.5

目地:范化目的是使构更合理,消除存异常,使数据冗余尽量小,便于插入、除和更新
:遵从概念一化 "一事一地",即一个系模式描述一个体或的一种联系。范的实质就是概念的一化。
方法:将系模式投影分解成两个或两个以上的系模式。
要求:分解后的系模式集合当与原系模式"等价",即经过自然接可以恢系而不失信息,并保持属性合理的系。

注意:一个系模式结这分解可以得到不同系模式集合,也就是分解方法不是唯一的。最小冗余的要求必以分解后的数据表达原来数据所有信息前提来实现。其根本目省存,避免数据不一致性,提高对关系的操作效率,同时满用需求。实际上,并不一定要求全部模式都达到BCNF不可。有故意保留部分冗余可能更方便数据查询。尤其于那些更新度不高,查询频度极高的数据更是如此。

系数据中,除了函数依之外有多接依问题,从而提出了第四范式,第五范式等更高一范化要求。在此,以后再。通常的数据库设计,很少有人做到很符合以上几个范式的,一般来,第一范式大家都可以遵守,完全遵守第二第三范式的人很少了,遵守的人一定就是设计数据的高手了,BCNF的范式出机会少,而且会破坏完整性,你可以在做设计不考它,当然在ORACLE中可通器解决其缺点。以后我共同做设计,也希望大家遵守以上几个范式。

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
2 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
Repo: Wie man Teamkollegen wiederbelebt
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Abenteuer: Wie man riesige Samen bekommt
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Die U.S. Air Force präsentiert ihren ersten KI-Kampfjet mit großem Aufsehen! Der Minister führte die Testfahrt persönlich durch, ohne in den gesamten Prozess einzugreifen, und 100.000 Codezeilen wurden 21 Mal getestet. Die U.S. Air Force präsentiert ihren ersten KI-Kampfjet mit großem Aufsehen! Der Minister führte die Testfahrt persönlich durch, ohne in den gesamten Prozess einzugreifen, und 100.000 Codezeilen wurden 21 Mal getestet. May 07, 2024 pm 05:00 PM

Kürzlich wurde die Militärwelt von der Nachricht überwältigt: US-Militärkampfflugzeuge können jetzt mithilfe von KI vollautomatische Luftkämpfe absolvieren. Ja, erst kürzlich wurde der KI-Kampfjet des US-Militärs zum ersten Mal der Öffentlichkeit zugänglich gemacht und sein Geheimnis gelüftet. Der vollständige Name dieses Jägers lautet „Variable Stability Simulator Test Aircraft“ (VISTA). Er wurde vom Minister der US-Luftwaffe persönlich geflogen, um einen Eins-gegen-eins-Luftkampf zu simulieren. Am 2. Mai startete US-Luftwaffenminister Frank Kendall mit einer X-62AVISTA auf der Edwards Air Force Base. Beachten Sie, dass während des einstündigen Fluges alle Flugaktionen autonom von der KI durchgeführt wurden! Kendall sagte: „In den letzten Jahrzehnten haben wir über das unbegrenzte Potenzial des autonomen Luft-Luft-Kampfes nachgedacht, aber es schien immer unerreichbar.“ Nun jedoch,

Tesla-Roboter arbeiten in Fabriken, Musk: Der Freiheitsgrad der Hände wird dieses Jahr 22 erreichen! Tesla-Roboter arbeiten in Fabriken, Musk: Der Freiheitsgrad der Hände wird dieses Jahr 22 erreichen! May 06, 2024 pm 04:13 PM

Das neueste Video von Teslas Roboter Optimus ist veröffentlicht und er kann bereits in der Fabrik arbeiten. Bei normaler Geschwindigkeit sortiert es Batterien (Teslas 4680-Batterien) so: Der Beamte hat auch veröffentlicht, wie es bei 20-facher Geschwindigkeit aussieht – auf einer kleinen „Workstation“, pflücken und pflücken und pflücken: Dieses Mal wird es freigegeben. Eines der Highlights Der Vorteil des Videos besteht darin, dass Optimus diese Arbeit in der Fabrik völlig autonom und ohne menschliches Eingreifen während des gesamten Prozesses erledigt. Und aus Sicht von Optimus kann es auch die krumme Batterie aufnehmen und platzieren, wobei der Schwerpunkt auf der automatischen Fehlerkorrektur liegt: In Bezug auf die Hand von Optimus gab der NVIDIA-Wissenschaftler Jim Fan eine hohe Bewertung ab: Die Hand von Optimus ist der fünffingrige Roboter der Welt am geschicktesten. Seine Hände sind nicht nur taktil

Honor Magic V3 stellt erstmals die KI-Defokussierungs-Augenschutztechnologie vor: Lindert effektiv die Entwicklung von Kurzsichtigkeit Honor Magic V3 stellt erstmals die KI-Defokussierungs-Augenschutztechnologie vor: Lindert effektiv die Entwicklung von Kurzsichtigkeit Jul 18, 2024 am 09:27 AM

Laut Nachrichten vom 12. Juli wurde die Honor Magic V3-Serie heute offiziell veröffentlicht und ist mit dem neuen Honor Vision Soothing Oasis-Augenschutzbildschirm ausgestattet. Der Bildschirm selbst verfügt zwar über hohe Spezifikationen und eine hohe Qualität, war aber auch Vorreiter bei der Einführung des aktiven KI-Augenschutzes Technologie. Es wird berichtet, dass die traditionelle Methode zur Linderung von Myopie „Myopie-Brillen“ ist. Die Stärke von Myopie-Brillen ist gleichmäßig verteilt, um sicherzustellen, dass der zentrale Sehbereich auf der Netzhaut abgebildet wird, der periphere Bereich jedoch dahinter Die Netzhaut erkennt, dass das Bild zurückliegt, wodurch die Richtung der Augenachse später wächst und sich dadurch vertieft. Eine der wichtigsten Möglichkeiten, die Entwicklung von Myopie zu lindern, ist derzeit die „Defokussierungslinse“. Der zentrale Bereich hat eine normale Stärke, und der periphere Bereich wird durch optische Designtrennwände so angepasst, dass das Bild im peripheren Bereich fällt vor der Netzhaut.

Das 70B-Modell generiert 1.000 Token in Sekunden, das Umschreiben des Codes übertrifft GPT-4o, vom Cursor-Team, einem von OpenAI investierten Code-Artefakt Das 70B-Modell generiert 1.000 Token in Sekunden, das Umschreiben des Codes übertrifft GPT-4o, vom Cursor-Team, einem von OpenAI investierten Code-Artefakt Jun 13, 2024 pm 03:47 PM

Beim Modell 70B können 1000 Token in Sekunden generiert werden, was fast 4000 Zeichen entspricht! Die Forscher haben Llama3 verfeinert und einen Beschleunigungsalgorithmus eingeführt. Im Vergleich zur nativen Version ist die Geschwindigkeit 13-mal höher! Es ist nicht nur schnell, seine Leistung bei Code-Rewriting-Aufgaben übertrifft sogar GPT-4o. Diese Errungenschaft stammt von anysphere, dem Team hinter dem beliebten KI-Programmierartefakt Cursor, und auch OpenAI beteiligte sich an der Investition. Sie müssen wissen, dass bei Groq, einem bekannten Framework zur schnellen Inferenzbeschleunigung, die Inferenzgeschwindigkeit von 70BLlama3 nur mehr als 300 Token pro Sekunde beträgt. Aufgrund der Geschwindigkeit von Cursor kann man sagen, dass eine nahezu sofortige vollständige Bearbeitung der Codedatei möglich ist. Manche Leute nennen es einen guten Kerl, wenn man Curs sagt

KI-Startups wechselten gemeinsam ihre Jobs zu OpenAI, und das Sicherheitsteam formierte sich neu, nachdem Ilya gegangen war! KI-Startups wechselten gemeinsam ihre Jobs zu OpenAI, und das Sicherheitsteam formierte sich neu, nachdem Ilya gegangen war! Jun 08, 2024 pm 01:00 PM

Letzte Woche wurde OpenAI inmitten der Welle interner Kündigungen und externer Kritik von internen und externen Problemen geplagt: - Der Verstoß gegen die Schwester der Witwe löste weltweit hitzige Diskussionen aus - Mitarbeiter, die „Overlord-Klauseln“ unterzeichneten, wurden einer nach dem anderen entlarvt – Internetnutzer listeten Ultramans „ Sieben Todsünden“ – Gerüchtebekämpfung: Laut durchgesickerten Informationen und Dokumenten, die Vox erhalten hat, war sich die leitende Führung von OpenAI, darunter Altman, dieser Eigenkapitalrückgewinnungsbestimmungen wohl bewusst und hat ihnen zugestimmt. Darüber hinaus steht OpenAI vor einem ernsten und dringenden Problem – der KI-Sicherheit. Die jüngsten Abgänge von fünf sicherheitsrelevanten Mitarbeitern, darunter zwei der prominentesten Mitarbeiter, und die Auflösung des „Super Alignment“-Teams haben die Sicherheitsprobleme von OpenAI erneut ins Rampenlicht gerückt. Das Fortune-Magazin berichtete, dass OpenA

Ausführliches Tutorial zum Herstellen einer Datenbankverbindung mit MySQLi in PHP Ausführliches Tutorial zum Herstellen einer Datenbankverbindung mit MySQLi in PHP Jun 04, 2024 pm 01:42 PM

So verwenden Sie MySQLi zum Herstellen einer Datenbankverbindung in PHP: MySQLi-Erweiterung einbinden (require_once) Verbindungsfunktion erstellen (functionconnect_to_db) Verbindungsfunktion aufrufen ($conn=connect_to_db()) Abfrage ausführen ($result=$conn->query()) Schließen Verbindung ( $conn->close())

Neuer Stapelprozess! Das Xiaomi MIX Fold 4 ist zum ersten Mal mit einem „dreidimensionalen, speziell geformten' Akku von Jinshajiang ausgestattet Neuer Stapelprozess! Das Xiaomi MIX Fold 4 ist zum ersten Mal mit einem „dreidimensionalen, speziell geformten' Akku von Jinshajiang ausgestattet Jul 20, 2024 am 03:20 AM

Laut Nachrichten vom 19. Juli wurde Xiaomi MIX Fold 4, das erste neue Flaggschiff-Falttelefon, heute Abend offiziell veröffentlicht und ist erstmals mit einem „dreidimensionalen, speziell geformten Akku“ ausgestattet. Berichten zufolge hat Xiaomi MIX Fold4 einen großen Durchbruch in der Batterietechnologie erzielt und eine innovative „dreidimensionale, speziell geformte Batterie“ speziell für Faltbildschirme entwickelt. Herkömmliche Faltschirmgeräte verwenden meist herkömmliche quadratische Batterien, die eine geringe Raumnutzungseffizienz aufweisen. Um dieses Problem zu lösen, verwendete Xiaomi nicht die üblichen Wickelbatteriezellen, sondern entwickelte ein neues Laminierungsverfahren, um eine neue Batterieform zu schaffen, die die Raumausnutzung erheblich verbesserte. Innovation in der Batterietechnologie Um positive und negative Elektrodenblätter abwechselnd präzise zu stapeln und die sichere Einbettung von Lithiumionen zu gewährleisten, hat Xiaomi eine neue Ultraschallschweißmaschine und Laminiermaschine entwickelt, um die Schweiß- und Schneidgenauigkeit zu verbessern.

iOS 18 fügt eine neue Albumfunktion „Wiederhergestellt' hinzu, um verlorene oder beschädigte Fotos wiederherzustellen iOS 18 fügt eine neue Albumfunktion „Wiederhergestellt' hinzu, um verlorene oder beschädigte Fotos wiederherzustellen Jul 18, 2024 am 05:48 AM

Apples neueste Versionen der iOS18-, iPadOS18- und macOS Sequoia-Systeme haben der Fotoanwendung eine wichtige Funktion hinzugefügt, die Benutzern dabei helfen soll, aus verschiedenen Gründen verlorene oder beschädigte Fotos und Videos einfach wiederherzustellen. Mit der neuen Funktion wird im Abschnitt „Extras“ der Fotos-App ein Album mit dem Namen „Wiederhergestellt“ eingeführt, das automatisch angezeigt wird, wenn ein Benutzer Bilder oder Videos auf seinem Gerät hat, die nicht Teil seiner Fotobibliothek sind. Das Aufkommen des Albums „Wiederhergestellt“ bietet eine Lösung für Fotos und Videos, die aufgrund einer Datenbankbeschädigung verloren gehen, die Kameraanwendung nicht korrekt in der Fotobibliothek speichert oder eine Drittanbieteranwendung die Fotobibliothek verwaltet. Benutzer benötigen nur wenige einfache Schritte

See all articles