Das Begriffide
Daten:Sie verwendet als Beschreibung der Sacheui
Datenbank:Sie ist organisiert,geteilte Menge von Daten,die lange Zeit im Rechner gespeichert wirdspa
Datenbanksystem:Es beteht aus Datenbank,DBMS(Database Management System),Programm,DBA(Database Administrator),die verantwortlich für Speicherung,Verwaltung,Umgang und Erhalt von Daten ist3d
Entität(entity):Sie besteht objektiv und kann voneinander unterscheidencode
Attribut(attribute):Irgendeine Eigenschaft,den Entität besitztorm
Schlüssel(key):Er ist eine Menge,die Entität einzig identifiziert對象
Entität Form(entity type):Wir bunutzen Entität Name und Attribut Name,um homogene Entität zu abstrahieren,wie Z.B Student(Sno,Name,Geschlecht)blog
Entität Menge(entity set):Sie ist Menge von homogene Entität,wie Z.B alle Studenten ist eine Entität Menge索引
Beziehung(Relationship):Beziehung besteht aus one to one,one to many,many to many Beziehung usw.ip
Ähnlich wie Baum Struktur
Nur eine Wurzelknoten
Es besteht aus one to one,one to many
Es ist erlaubt,dass Knoten mehrere Elternknoten und Kindknoten haben
Relationale Datenbank verwendet Relationales Modell als Organisationsmethode der Daten
Grundlegendes Begriff:
Beziehung(relation):Eine Beziehung ist nämlich Tabelle
Tuple:Eine Zeile in der Tabelle
Attribut(Attribute):Eine Glied in der Tabelle
Schlüssel(key):Irgendeine Attribut in der Tabelle,es kann einzige Tuple bestimmen
Domain:Domain ist Wertbereiche irgendeines Attribut
Komponent:Eine Attributwerte des Tuple
Ralationales Muster:Beschreibung der Beziehung,wird als
Beziehungname(Attribut1,Attribut2,···,Attributn)
geschrieben
1.Schema
Schema ist logische Struktur allgemeiner Daten und Beschreibung der Eigenschaften bei der Datenbank,ist publik Datensicht von alle Benutzer
2.External Schema
Es ist logische Struktur und Beschreibung der Eigenschaften bei allem Datenbank,es ist sichtbar von Datenbankbenutzer
3.Internal Schema
Eine Datenbank hat nur eine internal Schema,es ist physische Struktur der Daten und Beschreibung der Speicherungmethode.
Grundlegendes Begriff
Schlüsselkandidaten(candidate key):Irgendeine Entität Gruppe kann einzige Tuple bestimmen,aber deren Menge kann es nicht schaffen
Hauptcode(primary key):Eine Beziehung hat manche Schlüsselkandidaten,wählen wir eine von der Beziehung als Hauptcode aus
Schlüsselattribut(prime attribute):Alle Attribute von Kandidatencode
All key:Alle Attribute von relationales Modell ist Kandidatencode von dieses Modell
Falls Attribut A Hauptcode von Beziehung ist,A kann nicht NULL sein
1.Selektion(selection)
Bei der Beziehung wählen wir Tuple,das vorgegebene Beziehung entsprechen,aus
δF(R) = {t|t∈R∩F(t)='wahr'}
Unter F versteht man Auswahlsbeziehung,es ist logische Ausdruck
Z.B. recherchieren wir Studenten von IS
δSdept='IS'(Student)
2.Projektion(projection)
Projektion von Beziehung R bedeutet,dass wir von R einige Attribute Glied auswählen,um neue Beziehung zummenzusetzen
∏A(R) = {t[A]|t∈R}
A ist Attribute Glied von R
Z.B. recherchieren wir Name und Sdept von Studenten
∏Sname,Sdept(Student)
3.Join
A und B sind vergleichbare und gleiche Attribute Gruppe von R und S,θ ist Vergleich Operator
1.Definition des Schemas
CREATE SCHEMA<模式名> AUTHORIZATION<用戶名>
2.Loeschung des Schemas
DROP SCHEMA<模式名><CASCADE|RESTRICT>
1.Difinition grundlegender Tabelle
CREATE TABLE<表名>(<列名><數據類型>[列級完整性約束條件] [,<列名><數據類型>[列級完整性約束條件]] ··· [,<表級完整性約束條件>]);
Z.B:
2.Korrigieren grundlegende Tabelle
ALTER TBALE<表名> [ADD [COLUMN]<新列名><數據類型>[完整性約束]] [ADD<表級完整性約束>] [DROP[COLUMN]<列名>[CASCADE|RESTRICT]] [DROP CONSTRAINT<完整性約束名>[RESTRICT|CASCADE]] [ALTER COLUMN<列名><數據類型>];
3.Loeschung des grundelegender Tabelle
DROP TABLE <表名> [RESTRICT|CASCADE]
1.Gruendung des Index
CREATE [UNIQUE][CLUSTER] INDEX <索引名> ON <表名>(<列名>[<次序>][,<列名>[<次序>]]···);
2.Korrigieren den Index
ALTER INDEX <舊索引名> RENAME TO <新索引名>;
SELECT [ALL|DISTINCT] <目標列表達式> [,<目標列表達式>]··· FROM <表名或視圖名> [,<表名或視圖名>···]|(<SELECT 語句>) [AS] <別名> [WHERE <條件表達式>] [GROUP BY <列名1> [HAVING <條件表達式>]] [ORDER BY <列名2> [ASC|DESC]];
INSERT INTO <表名>[<屬性列1>][,<屬性列2>···] VALUES(<常量1>[,<常量2>]···)
INSERT INTO <表名>[<屬性列1>][,<屬性列2>···] 子查詢;
UPDATE <表名> SET <列名> = <表達式>[,<列名>=<表達式>]··· [WHERE<條件>];
DELETE FROM <表名> [WHERE<條件>];
CREATE VIEW <視圖名>[(<列名>[,<列名>]···)] AS <子查詢> [WITH CHECK OPTION]
Wenn man Daten aktualisiert,insert,loescht,WITH CHECK OPTION kann Beziehung von Teilabfrage automatisiert hinzufuegen
1.GRANT
GRANT <權限>[,權限]···
ON <對象類型><對象名>[,<對象類型><對象名>]··· TO <用戶>[,<用戶>]··· [WITH GRANT OPTION]
Falls "WITH GRANT OPTION" festgelegt wird,der Benutzer,der irgendeine Kompetenz erhalten,kann diese Kompetenzen andere Benutzer ermächtigen
2.REVOKE
REVOKE<權限>[,<權限>]···
ON <對象類型><對象名>[,<對象類型><對象名>]··· FROM <用戶>[,<用戶>]···[CASCADE|RESTRICT]
4.1.2 Die Rolle
1.Definition der Rolle
CREATE ROLE <角色名>
2.Ermächtigung der Rolle
GRANT <權限>[,<權限>]···
ON <對象類型>對象名 TO <角色>[,<角色>]···
3.Ermächtigen andere Rolle und Benutzer Rolle
GRANT <角色1>[,<角色2>]···
TO <角色3>[,<用戶1>]··· [WITH ADMIN OPTION]
Falls "WITH ADMIN OPTION" festgelegt wird,der Benutzer order die Rolle,der irgendeine Kompetenz erhalten,kann diese Kompetenzen andere Rolle ermächtigen
4.Revoke der Kompetenz
REVOKE <權限>[,<權限>]···
ON <對象類型><對象名> FROM <角色>[,<角色>]···
Eine relationale Beziehung niedriges Niveau kann durch Schema Decomposition in mehrere relationale Beziehung höheres Niveau umsetzen
Dieses Prozess wird als Normalisierung(Normalization) bezeichnet
Jede Komponenten kann nicht eingeteilt werden
Falls R∈1NF,jede Nichtschlüsselattribut ist äbhangig von Schlüsselkandidaten,dann R∈2NF
wie Z.B. SLC(Sno,Cno),Sdept und Sloc ist äbhangig von Sno,nicht von Cno,dann es entspricht nicht zweiter Normalform
Falls R∈2NF,und Dritte Normalform ist kein Nichtschlüsselattribut von einem Schlüsselkandidaten transitiv abhängig.
wie Z.B. Stu(Sno,Sdept,Sloc),Sno bestimmt Sdept,Sdept bestimmt Sloc,Eine Beziehung der Sno->Sdept->Sloc besteht,sie entspricht nicht Dritter Normalform
Falls R∈3NF,es gibt kein Teiläbhangigkeit und transive Äbhangigkeit von Schlüsselattribut zu Schlüsselkandidaten