1
00:00:02,250 --> 00:00:05,700
Ciao, questo è quello da fare e bentornato.

2
00:00:05,760 --> 00:00:11,520
Quindi abbiamo detto che lasceremo il fatto sul nostro progetto per usarlo come database.

3
00:00:11,550 --> 00:00:17,850
Quindi la prima cosa che dobbiamo fare è che dobbiamo progettare il nostro database di lavoro prima di poter

4
00:00:18,210 --> 00:00:23,860
effettivamente creare un database e creare tutte le tabelle nel database e popolarle con i dati.

5
00:00:24,240 --> 00:00:29,970
Pertanto, quando si sta lavorando a un progetto una volta soddisfatti i requisiti aziendali, una delle

6
00:00:29,970 --> 00:00:34,070
prime cose a cui è stato chiesto di progettare i dati.

7
00:00:34,220 --> 00:00:34,610
OK.

8
00:00:34,680 --> 00:00:41,790
Così faresti prima ancora di creare il database, ma le tabelle necessarie che ho fatto per progettare è un passo

9
00:00:41,790 --> 00:00:48,360
molto importante e sarebbe fatto da qualcuno che ha esperienza e se non è fatto correttamente allora ci

10
00:00:48,360 --> 00:00:52,160
possono essere un sacco di problemi come dati incoerenti .

11
00:00:52,250 --> 00:00:57,960
E così vorresti progettare il tuo database in un accordo appropriato su una delle cose in un

12
00:00:57,960 --> 00:01:02,180
database relazionale è quello di ridurre la ridondanza o i loro dati.

13
00:01:02,650 --> 00:01:05,870
E per questo usiamo qualcosa che ci chiama normalizzazione.

14
00:01:06,120 --> 00:01:13,320
Quindi la normalizzazione è un processo che indirizza la ridondanza e ha un sacco di regole e dovresti

15
00:01:13,320 --> 00:01:20,010
usare quelle regole per ridisegnare il tuo database in modo che abbia il maggior numero possibile di

16
00:01:20,130 --> 00:01:21,500
ridondanza dei dati.

17
00:01:21,990 --> 00:01:27,160
Quindi in questa particolare conferenza Vivan guarda a queste regole di normalizzazione.

18
00:01:27,300 --> 00:01:32,070
Quindi impareremo come progettare il database e nella prossima lezione analizzeremo

19
00:01:32,070 --> 00:01:38,250
l'attuale design del database rispetto al progetto e dopo avremo effettivamente creato il nostro database

20
00:01:38,250 --> 00:01:42,490
e anche tutte le tabelle all'interno del Banca dati.

21
00:01:42,540 --> 00:01:47,700
Quindi queste sono le diverse regole di normalizzazione in modo che le forme normali senza corna.

22
00:01:47,760 --> 00:01:54,420
Quindi hai uno e due e mezzo tre e A. B. C. abbastanza per abbastanza 1:06

23
00:01:54,420 --> 00:02:01,910
abbastanza da correre abbastanza da chiudere il primo modulo normale ed è stato introdotto da uno stato preso e discutiamo di quello

24
00:02:01,910 --> 00:02:09,630
che abbiamo menzionato a proposito ha ottenuto una carta e sono finito a una conferenza e questo è stato introdotto nel 1970

25
00:02:09,630 --> 00:02:16,510
e dopo che due e tre abbastanza furono introdotti nel 1971 e nel 1974 KOG ha collaborato con pregiudizi.

26
00:02:16,650 --> 00:02:23,990
E insieme hanno inventato le virgolette normali da ora in pratica per lo più ci si aspetterebbe che il

27
00:02:24,050 --> 00:02:31,670
design fosse in una forma abbastanza tre o BCA e quindi se non è occupato abbastanza Molto probabilmente non

28
00:02:31,670 --> 00:02:35,200
sarebbe diverso da c in nelle diverse tabelle.

29
00:02:35,210 --> 00:02:40,930
A volte ci può essere qualcosa di buono in NC, ma per lo più non si vedrebbe alcun bisogno di un NC.

30
00:02:41,120 --> 00:02:48,890
Ora se un giorno particolare ma è e BC e quindi significa anche che non è tre e metà di esso è anche in

31
00:02:48,890 --> 00:02:54,800
un sottotaglio quindi anche nel volere sapere se un tavolo non è tre e metà vuol dire

32
00:02:54,860 --> 00:03:01,640
che è e si fondono e anche e smussati e non fa nulla significa che è anche in un capo.

33
00:03:01,910 --> 00:03:08,530
Quindi in questa particolare conferenza ne guarderai uno abbastanza per essere abbastanza e il CNF non sarà

34
00:03:08,540 --> 00:03:15,740
abbastanza incendiato a sufficienza, sei sono abbastanza simile a me per database più complicati e non ne parleremo in

35
00:03:15,740 --> 00:03:22,430
futuro se io sento che è necessario che io possa avere una lezione su di loro ma almeno

36
00:03:22,580 --> 00:03:26,790
per ora non voglio discutere di quelle altre forme normali.

37
00:03:27,040 --> 00:03:29,730
OK, questo è quello che abbiamo ora.

38
00:03:29,870 --> 00:03:39,650
Ora andiamo avanti e guardiamo i nostri dati che abbiamo già per il nostro progetto in modo da poter ricordare questo

39
00:03:39,650 --> 00:03:40,640
particolare file.

40
00:03:40,640 --> 00:03:44,670
Quindi questo è il libro mentre il testo archivia la data del tuo libro.

41
00:03:44,810 --> 00:03:45,240
OK.

42
00:03:45,260 --> 00:03:51,170
E sappiamo che il nostro progetto riguarda la marcatura di libri che oscurano e anche i film.

43
00:03:51,180 --> 00:03:54,010
E questa era la data che avevamo per un libro.

44
00:03:54,020 --> 00:03:58,290
Ora immagina che tutti questi dati si trovino in una tabella chiamata libro.

45
00:03:58,460 --> 00:03:58,930
OK.

46
00:03:59,090 --> 00:04:01,130
E qui abbiamo le diverse colonne.

47
00:04:01,130 --> 00:04:03,400
Il primo è l'idea secondo è il titolo del libro.

48
00:04:03,400 --> 00:04:06,240
Terzo è la data di pubblicazione per l'editore.

49
00:04:06,430 --> 00:04:13,130
Cinquantuno è autore di successo Jondrette settimo voto di otto è se è adatto ai bambini o meno.

50
00:04:13,130 --> 00:04:21,050
Ora qui possiamo vedere che una di queste regole ha più autori nella loro virgola separata e nel database

51
00:04:21,050 --> 00:04:21,730
relazionale.

52
00:04:21,720 --> 00:04:25,460
Non vorresti che i tuoi dati non fossero in questo formato.

53
00:04:25,490 --> 00:04:32,630
Non è in formato normalizzato, quindi abbiamo bisogno di iniziare a non essere fuorviati che useremmo il non-modale

54
00:04:32,630 --> 00:04:35,700
delle forme normali che abbiamo appena discusso.

55
00:04:35,840 --> 00:04:41,360
Quindi parlerai di loro e ridurremo la ridondanza ora qui.

56
00:04:41,510 --> 00:04:47,070
È molto difficile cercare una riga particolare se i dati sono così.

57
00:04:47,140 --> 00:04:49,350
Non è molto facile cercare i dati.

58
00:04:49,700 --> 00:04:51,370
Quindi questo non è raccomandato.

59
00:04:51,380 --> 00:04:53,970
Quindi non vuoi memorizzare i tuoi dati in questo modo.

60
00:04:54,260 --> 00:04:56,790
Quindi qui abbiamo questo file chiamato normalizzazione.

61
00:04:56,990 --> 00:04:59,420
E usando questo file ho intenzione di spiegarli entrambi.

62
00:04:59,420 --> 00:05:00,930
Sono diversi nelle mie forme.

63
00:05:01,250 --> 00:05:01,970
No non sono.

64
00:05:01,970 --> 00:05:05,360
Non hai intenzione di discuterne a un livello molto approfondito.

65
00:05:05,780 --> 00:05:06,600
Se hai intenzione di farlo.

66
00:05:06,600 --> 00:05:08,330
Ci vuole un sacco di tempo.

67
00:05:08,330 --> 00:05:12,680
Quindi lo siamo, ma lo faremo ad un livello appropriato e dovresti essere in grado di

68
00:05:12,680 --> 00:05:13,820
capirlo sulle mie forme.

69
00:05:14,340 --> 00:05:21,020
E ogni buon progettista di database che conosco su questo normalizzare le forme a volte alcuni sviluppatori non

70
00:05:21,020 --> 00:05:27,050
lo capiscono e molte volte potrebbe andare bene, ma a volte potrebbero, a causa di una

71
00:05:27,050 --> 00:05:31,920
mancanza di comprensione di ciò, progettare database che non sono realmente progettati.

72
00:05:32,360 --> 00:05:37,920
Ma guardiamo onestamente questo fatto su un sacco di persone che in realtà si confondono tra

73
00:05:37,940 --> 00:05:41,920
tre e trovano abbastanza BCA e sono confusi con Doc indietro.

74
00:05:42,140 --> 00:05:45,160
Spero che questo lo chiarisca.

75
00:05:45,200 --> 00:05:49,990
Spero che sarai in grado di capire queste diverse forme normali in un modo carino.

76
00:05:50,210 --> 00:05:54,630
Quindi il fatto è che non vogliamo che i dati siano in una forma normalizzata.

77
00:05:54,650 --> 00:05:58,980
Quindi quello che dobbiamo fare qui è che abbiamo qui questi diversi valori.

78
00:05:59,210 --> 00:06:05,300
Quindi la prima forma normale richiede che ogni cella in quella tabella abbia un solo valore.

79
00:06:05,300 --> 00:06:12,530
Quindi non dovresti avere un elenco di valori di tali operatori di chiamata e lo conta come valori comici.

80
00:06:12,570 --> 00:06:16,140
Quindi richiede che ogni valore di attributo sia atomico.

81
00:06:16,300 --> 00:06:19,570
OK, questo è il termine che usano per la prima forma normale.

82
00:06:19,580 --> 00:06:25,880
Quindi per fare ciò abbiamo bisogno di dividere questa particolare riga in più righe e ognuno di loro

83
00:06:25,880 --> 00:06:27,700
sarebbe come un solo autore.

84
00:06:27,710 --> 00:06:29,830
Questo è esattamente quello che abbiamo fatto qui.

85
00:06:29,840 --> 00:06:36,920
Così hai impostato i modelli di design book ha più autori e li dividiamo facendo questi diversi

86
00:06:36,950 --> 00:06:45,700
drill e possiamo vedere che ora ognuna delle celle qui come solo una linea conosci lo svantaggio di questo è la

87
00:06:45,830 --> 00:06:52,970
ridondanza in quanto possiamo vedere che il resto di i dati per quel particolare libro sono stati

88
00:06:53,360 --> 00:06:56,140
ripetuti per tutte queste quattro righe.

89
00:06:56,170 --> 00:06:56,750
Tutto ok.

90
00:06:56,810 --> 00:07:02,660
Quindi a causa di ciò abbiamo aumentato la nostra età e abbiamo qualcosa chiamato update delete e

91
00:07:02,660 --> 00:07:03,600
insertion anomalie.

92
00:07:03,890 --> 00:07:09,920
Ora ad esempio l'anomalia di aggiornamento è che se vuoi cambiare qualcosa dovresti cambiare in tutte

93
00:07:09,920 --> 00:07:11,250
le diverse righe.

94
00:07:11,450 --> 00:07:13,760
OK, vuoi cambiarlo per dirigere il primo progetto.

95
00:07:13,850 --> 00:07:18,470
Dovresti cambiarlo in tutti gli altri ruoli e se non lo fai in uno di questi,

96
00:07:18,470 --> 00:07:20,180
si finirebbe con dati incoerenti.

97
00:07:20,210 --> 00:07:21,670
Quindi questa è l'anomalia di aggiornamento.

98
00:07:21,830 --> 00:07:25,870
Nessuna cancellazione è che non sia sicuro cancellare questa particolare riga qui.

99
00:07:26,060 --> 00:07:26,870
OK.

100
00:07:26,870 --> 00:07:34,130
E se c'è un solo libro di questo autore, se hai intenzione di cancellarlo, perdi anche le

101
00:07:34,130 --> 00:07:36,670
informazioni sull'autore insieme al libro.

102
00:07:36,860 --> 00:07:43,610
Quindi non sappiamo più che non abbiamo più queste informazioni sull'autore nel nostro database.

103
00:07:43,610 --> 00:07:49,640
Quindi questa è l'anomalia di cancellazione di un animale di inserimento che non diciamo se vuoi

104
00:07:49,730 --> 00:07:53,800
inserire informazioni solo su questo particolare autore o qualche autore.

105
00:07:53,990 --> 00:07:58,520
Ma non abbiamo informazioni sui libri che l'autore abbia scritto.

106
00:07:58,760 --> 00:08:04,160
Quindi potrebbe non essere possibile inserire quel tipo di dati nel nostro database.

107
00:08:04,160 --> 00:08:09,200
Questo è vero e certamente l'informazione dell'autore perché questo particolare giorno, ma potrebbe

108
00:08:09,200 --> 00:08:12,830
richiedere di aggiungere sempre anche il titolo del libro.

109
00:08:12,830 --> 00:08:16,660
Quindi se abbiamo quel tipo di vincolo allora sarà possibile aggiungerlo.

110
00:08:16,820 --> 00:08:19,510
Quindi questo è l'inserimento e io sono solo.

111
00:08:19,620 --> 00:08:26,910
Quindi per inserirlo è necessario inserire il libro e anche non così, ma questo è un modulo

112
00:08:27,300 --> 00:08:30,400
di backcross, ma ha alcuni problemi qui.

113
00:08:30,480 --> 00:08:37,880
Ora, prima di perfezionare ulteriormente questo schema, dobbiamo capire due cose.

114
00:08:37,920 --> 00:08:41,240
Uno è che abbiamo qui qualcosa che ci chiama chiavi candidate.

115
00:08:41,310 --> 00:08:46,980
Quindi all'inizio della lezione introduttiva abbiamo menzionato la chiave primaria e questa sarebbe la chiave

116
00:08:46,980 --> 00:08:47,740
principale qui.

117
00:08:48,000 --> 00:08:54,030
Ma in generale ci possono essere più chiavi in una tabella per esempio o ID come chiave primaria.

118
00:08:54,030 --> 00:08:57,720
Chiamiamolo come una chiave, ma possono esserci anche altre chiavi.

119
00:08:57,720 --> 00:09:02,060
Ad esempio qui data di pubblicazione del titolo e nome dell'editore.

120
00:09:02,060 --> 00:09:06,120
Insieme, queste tre colonne possono anche essere un'altra chiave.

121
00:09:06,300 --> 00:09:06,690
OK.

122
00:09:06,750 --> 00:09:09,310
E in tal caso lo chiamiamo come chiave candidata.

123
00:09:09,570 --> 00:09:09,860
OK.

124
00:09:09,870 --> 00:09:12,610
Ogni volta che abbiamo più di una chiave, la chiamiamo candidata.

125
00:09:12,630 --> 00:09:17,490
Queste e queste tre colonne identificheranno in modo univoco yaro.

126
00:09:17,640 --> 00:09:19,450
Quindi non puoi come un'altra regola.

127
00:09:19,490 --> 00:09:23,320
Non ha pubblicato le pubblicazioni di Wilder nel 1854.

128
00:09:23,380 --> 00:09:24,700
Non puoi averlo.

129
00:09:24,720 --> 00:09:27,260
Quindi in questo senso chiama come unico.

130
00:09:27,540 --> 00:09:33,080
Allo stesso modo c'è anche un altro tipo di chiave che è la data di pubblicazione di Biden e l'autore.

131
00:09:33,100 --> 00:09:39,690
Quindi insieme la rosa e quelle colonne sarebbero anche uniche.

132
00:09:39,870 --> 00:09:40,420
OK.

133
00:09:40,710 --> 00:09:46,200
Ora in un tavolo se possiedi tipi di chiavi di questo tipo, allora li chiamiamo come tipo di chiavi o

134
00:09:46,200 --> 00:09:47,140
semplicemente come chiavi.

135
00:09:47,370 --> 00:09:55,530
Ma uno di questi che assegneremo come chiave primaria è che normalmente una persona preferisce avere una chiave

136
00:09:55,530 --> 00:10:01,110
primaria come questa che è un numero intero perché aiuterà quella performance.

137
00:10:01,200 --> 00:10:07,230
Quindi, soprattutto se hai tabelle come questa o questa è una tabella di libri e quindi ci sono anche altre

138
00:10:07,230 --> 00:10:08,000
tabelle correlate.

139
00:10:08,280 --> 00:10:15,810
E se per un dato molto se si devono combinare queste tabelle diverse per ottenere i dati

140
00:10:15,810 --> 00:10:21,660
richiesti, allora si combinano quelle tabelle sulla base di alcune imprese comuni.

141
00:10:21,660 --> 00:10:22,000
OK.

142
00:10:22,020 --> 00:10:27,350
Quindi, prima abbiamo inventato quell'elettrodo che ho menzionato sulla chiave straniera.

143
00:10:27,700 --> 00:10:27,990
OK.

144
00:10:27,990 --> 00:10:30,660
Quindi cosa otterresti un finanziamento con una chiave primaria e un tavolo.

145
00:10:30,690 --> 00:10:33,840
Diciamo che c'è una tabella per adulti che fa riferimento a questa chiave primaria.

146
00:10:33,900 --> 00:10:40,170
Quindi, in quel tipo di chiave in quel tipo di scenario, stiamo unendo queste tabelle usando questi attributi

147
00:10:40,170 --> 00:10:44,360
comuni come la chiave esterna che fa riferimento all'indice del diario.

148
00:10:44,370 --> 00:10:51,370
Quindi l'idea per me sarebbe sotto l'ID e questo campo sotto la chiave esterna e l'altra tabella.

149
00:10:51,510 --> 00:10:56,030
Quindi useresti quel campo comune per estrarre i dati.

150
00:10:56,060 --> 00:11:00,990
Vedo quel tipo di query più avanti quando stiamo guardando alcuni dati da quel database.

151
00:11:00,990 --> 00:11:08,820
Si chiama setup pronto in modo che sarebbe molto meglio se la chiave primaria fosse un intero.

152
00:11:08,820 --> 00:11:13,980
Ecco perché molti di loro preferirebbero che fosse un numero intero piuttosto che usare qualcosa come questo

153
00:11:13,980 --> 00:11:15,020
come chiave primaria.

154
00:11:15,990 --> 00:11:19,150
Fondamentalmente ogni persona avrà una chiave primaria.

155
00:11:19,170 --> 00:11:21,250
OK, così puoi averlo in quel modo.

156
00:11:21,330 --> 00:11:27,720
E così in quel caso chiamiamo la chiave primaria come una chiave primaria sostitutiva, le chiavi primarie non possono avere

157
00:11:27,720 --> 00:11:28,450
valori nulli.

158
00:11:28,470 --> 00:11:29,710
Quindi tienilo a mente.

159
00:11:29,790 --> 00:11:35,460
Quindi non puoi avere un valore nullo e non valutare in quanto significa semplicemente che non hai dati per

160
00:11:35,460 --> 00:11:36,680
quel particolare set.

161
00:11:36,960 --> 00:11:43,350
OK così come il valore nullo e nel linguaggio di programmazione Java, ma qui le chiavi univoche possono avere un

162
00:11:43,350 --> 00:11:44,990
po 'di nullable utilizzato.

163
00:11:45,300 --> 00:11:50,300
OK, quindi puoi avere titoli come quelli che sono rodded e nel 1854 può essere.

164
00:11:50,550 --> 00:11:54,350
E poi puoi avere un editore e questo dà quell'unicità.

165
00:11:54,410 --> 00:12:01,980
Non ha importanza nel senso che qualche altra carta può avere piuttosto e non una pubblicazione più ampia.

166
00:12:02,010 --> 00:12:07,400
Quindi, quando non c'è, allora quel vincolo unico è rilassato.

167
00:12:07,590 --> 00:12:08,970
Quindi questa è una cosa.

168
00:12:08,970 --> 00:12:13,610
Quindi chiavi univoche possono come entrambe queste chiavi sono uniche e possono non avere molto uso.

169
00:12:13,620 --> 00:12:15,000
Quindi tienilo a mente.

170
00:12:15,000 --> 00:12:22,770
Ora diamo un'occhiata al Blu N. F. abbastanza bene da capire basta fare supporre che ci

171
00:12:22,770 --> 00:12:25,080
sia un'altra colonna chiamata indirizzo del publisher.

172
00:12:25,220 --> 00:12:27,610
OK, qui aiutiamo l'editore pubblico me.

173
00:12:27,840 --> 00:12:31,020
Quindi ogni editore ha anche un indirizzo.

174
00:12:31,130 --> 00:12:36,850
Quindi, questo significa che l'indirizzo dipende dall'editore l'editore o dipende solo dal

175
00:12:36,850 --> 00:12:43,040
nome del publisher e che tipo di dipendenza sta mostrando in questo modo.

176
00:12:43,150 --> 00:12:43,630
OK.

177
00:12:43,770 --> 00:12:46,690
È questo che stiamo usando, credo con un trattino o no.

178
00:12:47,000 --> 00:12:54,730
Quindi sotto gli angoli una dipendenza funzionale F. D. Si chiama dipendenza funzionale cosa vuol dire

179
00:12:54,750 --> 00:12:58,300
come nome dell'editore stesso nome editore che appare tempi commerciabili.

180
00:12:58,350 --> 00:13:00,600
Quindi l'editore si ripete anche.

181
00:13:00,820 --> 00:13:01,130
OK.

182
00:13:01,170 --> 00:13:02,400
Quindi questa è la cosa.

183
00:13:02,460 --> 00:13:10,410
Ora se abbiamo questo tipo di visualizzazione della nostra dipendenza funzionale di dipendenza sotto questo attributo sul lato sinistro che può

184
00:13:10,590 --> 00:13:13,430
anche essere più di uno sarà OK.

185
00:13:13,530 --> 00:13:17,740
Ora se questo è un sottoinsieme appropriato di un po 'di calore.

186
00:13:17,970 --> 00:13:24,010
OK ora qui abbiamo i diversi tasti su questo particolare attributo sul lato sinistro.

187
00:13:24,030 --> 00:13:32,550
Se si tratta di un sottoinsieme appropriato di qualche chiave, questa relazione particolare ne determinerebbe la seconda.

188
00:13:33,000 --> 00:13:38,100
Per esempio qui pubblichi il tuo nome come parte di qui.

189
00:13:38,320 --> 00:13:40,610
Questa particolare chiave.

190
00:13:40,760 --> 00:13:45,080
Quindi quello che succederà è che avremo qualcuno sottovoce.

191
00:13:45,280 --> 00:13:48,070
Quindi per esempio qui OK.

192
00:13:48,080 --> 00:13:52,030
O'REILLY O'Reilly Media è in estate ha qualche indirizzo.

193
00:13:52,160 --> 00:13:55,070
Quindi lo ripeterà più volte.

194
00:13:55,220 --> 00:13:55,490
Destra.

195
00:13:55,490 --> 00:13:57,750
In modo che detti dati ridondanti.

196
00:13:57,750 --> 00:14:04,880
Quindi il fatto è che se si ha una dipendenza funzionale nell'attributo di sinistra è un sottoinsieme

197
00:14:04,940 --> 00:14:12,950
appropriato di qualche chiave, allora si ha la tabella non e Sicherer non-musulmano e in realtà si è risolto come

198
00:14:13,610 --> 00:14:14,110
OK.

199
00:14:14,120 --> 00:14:19,340
Quindi abbiamo bisogno di scomporre questa tabella in più tabelle in modo che possiamo avere due tabelle diverse.

200
00:14:19,340 --> 00:14:27,140
Editore e libro, quindi non avevamo quasi la possibilità di prenotare come tabella degli editori Antos il nome e l'indirizzo del publisher in

201
00:14:27,230 --> 00:14:28,300
questa nuova tabella.

202
00:14:28,320 --> 00:14:31,720
Co-editore OK, quindi intendi i miei negra qui.

203
00:14:32,010 --> 00:14:33,680
Ok presto.

204
00:14:33,740 --> 00:14:41,580
Quindi ci sono stati altri elementi del libro in grado e questo editore ha anche un ID della chiave primaria e quell'Id farà

205
00:14:41,580 --> 00:14:43,860
riferimento qui nella tabella del libro.

206
00:14:43,900 --> 00:14:46,180
Quindi nel libro non ci sarà più il nome sul loro.

207
00:14:46,190 --> 00:14:50,210
Abbiamo solo l'editore per sottolineare l'ID e pubblicarlo su un ID di scuola sarebbe la

208
00:14:50,210 --> 00:14:50,830
chiave esterna.

209
00:14:50,890 --> 00:14:57,110
Il nostro Nick farebbe riferimento a questo ID e alla tabella dei publisher e che questo

210
00:14:57,800 --> 00:15:05,120
sia il rapporto di molti a uno in un rapporto nel senso qui e molti a molti record di molti

211
00:15:05,120 --> 00:15:11,910
editori pubblicare più di una pubblicazione o registrare ciò che corrisponde esattamente a un editore all'interno questo tavolo.

212
00:15:12,040 --> 00:15:12,630
OK.

213
00:15:12,860 --> 00:15:20,360
Quindi ciò che significa in altre parole è che un singolo editore può pubblicare molti libri e la qualità ha un rapporto molti

214
00:15:20,360 --> 00:15:21,320
a uno.

215
00:15:21,320 --> 00:15:26,690
Quindi, se guardi da questo sito da Bukta editore, sarebbe da molti a uno Dovi sarebbe uno

216
00:15:26,690 --> 00:15:27,670
a molti.

217
00:15:28,010 --> 00:15:29,200
Quindi questa è una cosa.

218
00:15:29,210 --> 00:15:38,420
Allo stesso modo, ammettiamo anche che abbiamo una biografia degli autori di quella che abbiamo ancora una volta in una situazione

219
00:15:38,420 --> 00:15:41,020
simile che chiamiamo dipendenza parziale.

220
00:15:41,270 --> 00:15:47,600
Quindi, come l'autore qui Arthur Meem e stiamo dicendo che c'è qualche biografia associata

221
00:15:47,600 --> 00:15:48,470
all'autore.

222
00:15:48,470 --> 00:15:52,900
Quindi quella dipendenza è il nome dell'autore e l'autore.

223
00:15:52,970 --> 00:15:59,120
Quindi l'autore bio dipende dal nome dell'autore e dal nome dell'autore come un sottoinsieme appropriato di questo

224
00:15:59,120 --> 00:15:59,940
particolare candidato.

225
00:15:59,990 --> 00:16:05,810
E così abbiamo ancora qualcuno e dati e quindi abbiamo bisogno di dividere il tavolo per ulteriori informazioni sul prodotto.

226
00:16:05,810 --> 00:16:12,530
Stiamo introducendo altri due tavoli e autore e libro autrice di underskirt in modo che il tavolo dell'autore abbia il nome

227
00:16:12,530 --> 00:16:19,130
di o proprio come un editore e il libro sull'autore della scuola sia percorribile a piedi per catturare la relazione

228
00:16:19,250 --> 00:16:20,990
tra il libro o meno.

229
00:16:21,380 --> 00:16:27,620
Ma qui abbiamo un diverso tipo di relazione su molti perché un libro particolare può essere scritto

230
00:16:27,620 --> 00:16:32,620
da più autori e un singolo autore può anche scrivere più libri.

231
00:16:32,740 --> 00:16:38,480
Quindi, per catturare quel tipo di relazione tra i chiamanti e molte e molte relazioni, abbiamo bisogno di

232
00:16:38,480 --> 00:16:43,910
introdurre una tabella delle relazioni del tavolo di collegamento e questo è ciò che abbiamo qui qui.

233
00:16:43,910 --> 00:16:49,070
Il libro sottolineato ID è un deferenza estraneo all'idea nella tabella del libro, un autore sa che la

234
00:16:49,100 --> 00:16:51,800
quantità è un riferimento estraneo all'idea in questo campo.

235
00:16:52,100 --> 00:16:54,380
OK se è confuso penso che lo sarà.

236
00:16:54,380 --> 00:16:55,850
Sarà chiaro in seguito.

237
00:16:55,970 --> 00:17:02,210
Ma questo esempio è simile al libro e all'esempio utente che abbiamo visto nella lezione introduttiva di

238
00:17:02,630 --> 00:17:04,530
Verby come utente e libro.

239
00:17:04,580 --> 00:17:07,090
E abbiamo anche avuto un altro tavolo chiamato libro senza punteggio.

240
00:17:07,130 --> 00:17:13,460
Usalo o usa Non so segnapunti che stia catturando la relazione su tutti gli utenti che hanno messo in bookmark

241
00:17:13,460 --> 00:17:14,560
alcuni libri lì.

242
00:17:14,560 --> 00:17:19,010
Anche noi abbiamo il rapporto molti a molti così tanti Troppi introdurremo alla tabella di controllo

243
00:17:19,020 --> 00:17:22,240
dell'edizione in questo modo e c'è anche qualcosa chiamato Occhi.

244
00:17:22,480 --> 00:17:30,210
Rapporto uno a uno e che normalmente si potrebbe fare per un'istanza di una volta, si potrebbe avere questo.

245
00:17:30,260 --> 00:17:37,330
Ad esempio, qui hai la tabella utente accanto a te che ci sono altre 50 colonne in questa tabella.

246
00:17:37,790 --> 00:17:42,680
E così hai un sacco di dati ma anche il nome utente e la password sono memorizzati qui.

247
00:17:42,890 --> 00:17:49,610
Quindi ogni volta che vuoi verificare il nome utente e la password che vuoi acquistare nella mia password

248
00:17:49,610 --> 00:17:52,640
del passaporto dovresti cercare in questo enorme tavolo.

249
00:17:52,670 --> 00:17:57,890
Quindi, invece di fare ciò che puoi fare come puoi dividere questa tabella utente in due

250
00:17:57,890 --> 00:18:04,310
tabelle in una delle tabelle, solo il modo in cui l'e-mail e la password si trovano nell'altra tabella avrai il

251
00:18:04,310 --> 00:18:05,460
resto dei dati.

252
00:18:05,480 --> 00:18:11,300
Allo stesso modo, a volte alcuni dati che alcuni dati possono essere molto grandi non sembravano se

253
00:18:11,300 --> 00:18:17,750
si stesse avviando un MH piuttosto che occupasse molto spazio e non si desidera accedere a quella particolare tabella.

254
00:18:17,780 --> 00:18:23,780
Quindi, nel qual caso è possibile memorizzare quell'immagine in una tabella separata ma si manterrà comunque la stessa

255
00:18:24,260 --> 00:18:25,210
chiave primaria.

256
00:18:25,340 --> 00:18:27,980
OK, quindi entrambe le tabelle avranno visto le chiavi primarie.

257
00:18:28,000 --> 00:18:28,690
OK.

258
00:18:28,910 --> 00:18:34,840
Quindi ci sarà una mappatura uno a uno tra i cavi tra i due tavoli in modo

259
00:18:34,850 --> 00:18:36,420
da farti come questo.

260
00:18:36,450 --> 00:18:41,210
E in un'altra tabella avresti anche una tabella simile con un minor numero di colonne.

261
00:18:41,350 --> 00:18:41,860
OK.

262
00:18:42,140 --> 00:18:46,430
Quindi questa è la relazione uno a uno.

263
00:18:46,740 --> 00:18:48,380
Si chiama normalizzazione.

264
00:18:48,550 --> 00:18:50,280
Quindi è con una seconda forma normale.

265
00:18:50,350 --> 00:18:52,030
Non è una forma normale, è tutto segni.

266
00:18:52,030 --> 00:18:52,990
Prima forma normale.

267
00:18:52,990 --> 00:18:54,010
Quindi

268
00:18:56,500 --> 00:19:02,810
stai praticamente riducendo la ridondanza dividendo la tabella in più tabelle più piccole.

269
00:19:03,040 --> 00:19:04,770
Ora il prossimo è abbastanza occupato.

270
00:19:04,870 --> 00:19:10,370
In realtà il prossimo è abbastanza grande, ma per capirlo facilmente possiamo guardare BCA ora.

271
00:19:10,750 --> 00:19:16,320
Quindi ora capisco B. C. E. abbastanza ragazzi non sono tutti

272
00:19:16,330 --> 00:19:22,300
come sapete abbiamo una nuova colonna chiamata distintivo accanto al tavolo del libro: una nuova colonna chiamata distintivo e distintivo può essere qualcosa come questo come

273
00:19:22,320 --> 00:19:23,910
un senatore il nostro centesimo di sempre.

274
00:19:23,920 --> 00:19:29,890
Quindi il libro se un libro ha questa cosa in questo particolare batch significa che è un bestseller.

275
00:19:29,890 --> 00:19:32,660
Quindi ora supponiamo che dipenda dalla valutazione.

276
00:19:32,760 --> 00:19:37,660
OK tipo di dipendenza funzionale è una grande cosa seguita dal lotto.

277
00:19:37,680 --> 00:19:46,110
Quindi, dipendendo solo dalla valutazione, ma abbastanza occupato perché un tavolo sia abbastanza occupato ci può essere solo un tale tipo di

278
00:19:46,110 --> 00:19:52,260
dipendenze, avrai la chiave sul lato sinistro e sul lato destro come attributo non

279
00:19:52,260 --> 00:19:58,430
primo di ottobre non-prime è solo un attributo che non fa parte di nessuno dei tasti.

280
00:19:58,740 --> 00:20:05,040
OK, quindi sappiamo che abbiamo questo caso qui le chiavi del candidato se il lato destro

281
00:20:05,040 --> 00:20:12,530
del tuo cuore non fa parte di nessuna di quelle chiavi, quindi hai quindi che i non-prime verranno messi sul sito.

282
00:20:12,620 --> 00:20:17,880
E così MBC abbastanza tutte le dipendenze funzionali dovrebbero essere così.

283
00:20:18,000 --> 00:20:22,340
Ma in questo caso la valutazione non è non è una chiave.

284
00:20:22,510 --> 00:20:29,890
E così via indietro non solo attributo non-prime e causa di Daag la tabella del libro dell'edizione del libro non

285
00:20:30,120 --> 00:20:34,400
è buona perché lasciare il CNF OK perché saranno dati ridondanti.

286
00:20:34,440 --> 00:20:35,780
Quindi hai una valutazione.

287
00:20:36,090 --> 00:20:36,610
OK.

288
00:20:36,660 --> 00:20:38,010
E tu come torna.

289
00:20:38,070 --> 00:20:43,230
Quindi, ogni volta che si ripete lo stesso punteggio, la barra si ripeterà.

290
00:20:44,210 --> 00:20:45,920
OK, questa è la cosa.

291
00:20:46,380 --> 00:20:51,540
E così per questo la decomposizione sarebbe del tutto simile al caso precedente.

292
00:20:51,680 --> 00:20:55,130
Quindi, dove creeresti un nuovo tavolo, chiamiamolo come valutazione.

293
00:20:55,190 --> 00:21:01,820
E hai votato come distintivo sottolineato su Witan il tavolo useremo un ID di sottolineatura di rating che

294
00:21:01,820 --> 00:21:04,160
farà riferimento a questo particolare oggetto.

295
00:21:04,630 --> 00:21:10,200
Ora con quella relazione come la relazione del libro di relazione è ordinata e quindi libera.

296
00:21:10,550 --> 00:21:18,260
E in genere ogni relazione se tutte le relazioni sono in BCA e sono di forma quindi è molto improbabile che ne

297
00:21:18,260 --> 00:21:19,940
abbiano che siano nancies.

298
00:21:20,180 --> 00:21:24,000
Questa è la cosa che stavi cercando di essere in questa forma normale di Caernarfon.

299
00:21:24,140 --> 00:21:31,270
Ora tre abbastanza per tre e mezzo solo se una relazione non è abbastanza BCA è anche abbastanza entrata su abbastanza da

300
00:21:31,310 --> 00:21:32,190
una mano.

301
00:21:32,390 --> 00:21:37,450
Ma il fatto è che ci può essere una possibilità quando una relazione non sarà di Cnut.

302
00:21:37,520 --> 00:21:41,710
Ma la relazione è abbastanza N3 per quanto riguarda l'entrata che può essere la tendenza di qualcuno.

303
00:21:41,720 --> 00:21:47,110
Ora se troviamo la stessa funzionalità e poi vediamo distintivi e non-prime.

304
00:21:47,390 --> 00:21:51,060
Ora se supponiamo che questo sia solo una parte di qualche altra chiave.

305
00:21:51,120 --> 00:21:56,420
Ora diciamo che qui c'è una chiave chiamata Pubblicazione del titolo e badge che significa che il badge è

306
00:21:56,420 --> 00:21:57,600
parte di questa chiave.

307
00:21:57,950 --> 00:22:05,660
E questa tradizione è abbastanza soddisfacente, quindi non è nel CNS, ma non è abbastanza vera.

308
00:22:05,660 --> 00:22:06,200
OK.

309
00:22:06,440 --> 00:22:13,890
In questo caso, la Sienna sarà ben guidata, in questo caso potrebbe esserci una certa ridondanza perché la valutazione sui badge

310
00:22:13,920 --> 00:22:16,620
è presente e la valutazione si ripeterà.

311
00:22:16,790 --> 00:22:18,400
Anche il tasso si ripeterà.

312
00:22:18,440 --> 00:22:26,170
Quindi qui abbiamo questo tipo di dipendenza da transetto, quindi abbiamo la chiave X qui che non vale niente da creare.

313
00:22:26,660 --> 00:22:32,600
E questa valutazione non è un sottoinsieme appropriato di alcuna chiave.

314
00:22:33,030 --> 00:22:33,510
OK.

315
00:22:33,590 --> 00:22:38,570
Non è un sottoinsieme appropriato di alcuna chiave, proprio come qui in questo caso, ma fa parte di alcune chiavi.

316
00:22:38,900 --> 00:22:45,590
Ma qui in questo nell'esempio precedente era solo un attributo on in primo, ma qui è un attributo primo e questo

317
00:22:46,020 --> 00:22:49,760
è ciò che sta causando questa relazione in tre e mezzo.

318
00:22:49,760 --> 00:22:55,830
Quindi, in teoria, c'è una certa ridondanza qui a volte potresti dover scendere a compromessi con questo

319
00:22:55,900 --> 00:22:56,310
non-Romney.

320
00:22:56,370 --> 00:22:57,370
Amo questo.

321
00:22:57,640 --> 00:22:58,160
OK.

322
00:22:58,220 --> 00:23:02,710
Quindi potrebbe non essere in BCA abbastanza Barta potremmo dover rimanere con tre NF.

323
00:23:02,870 --> 00:23:09,960
A volte potremmo anche dover rimanere con forme normali più basse che sono inferiori alle tre metà e che lo

324
00:23:09,980 --> 00:23:13,620
farebbero anche se lo faremmo per ragioni di prestazione.

325
00:23:13,640 --> 00:23:19,490
Quindi, a volte, possiamo decidere come consentire determinate ridondanze per motivi di prestazioni.

326
00:23:19,520 --> 00:23:26,150
Quindi la normalizzazione è buona, ma a Nancy in certi casi non è possibile per determinate query,

327
00:23:26,570 --> 00:23:30,650
potrebbe essere lento produrre i risultati che l'utente può vedere.

328
00:23:31,160 --> 00:23:37,760
Pertanto, se esiste un tipo di query di questo tipo, spesso il tempo di risposta del sistema sarà lento.

329
00:23:37,760 --> 00:23:44,530
Quindi non è affatto così ampio che il programma di noi personale in genere consenta anche qualche ridondanza.

330
00:23:44,780 --> 00:23:46,550
Ma ancora dipende dal progetto.

331
00:23:46,850 --> 00:23:53,510
Ma normalmente dovresti cercare di ottenere qualcosa come un dato ridondante gratuito, ma se questo non

332
00:23:53,510 --> 00:23:57,400
è possibile, allora potresti chiamare una certa tendenza.

333
00:23:57,620 --> 00:24:00,240
Quindi in sostanza è quello che abbiamo che è la normalizzazione.

334
00:24:00,290 --> 00:24:08,300
E tu cercheresti sempre le tue tabelle e certe forme normalizzate e forme normali diranno il grado

335
00:24:08,420 --> 00:24:11,150
di ridondanza all'interno della relazione.

336
00:24:11,190 --> 00:24:11,980
OK.

337
00:24:12,020 --> 00:24:13,630
Quindi essenzialmente questo è quello che è.

338
00:24:13,640 --> 00:24:16,880
E tu dovevi rivolgermi all'editore e poi vedermi.

339
00:24:16,880 --> 00:24:22,790
Generalmente scomporremo le tabelle in tabelle più piccole in modo che quelle tabelle più piccole non violino la

340
00:24:23,300 --> 00:24:25,140
forma normale che stiamo osservando.

341
00:24:25,370 --> 00:24:28,230
E così che e e vedere non sarà fatto.

342
00:24:28,660 --> 00:24:34,570
Ma praticamente tu eri a conoscenza che i rapporti di coppia erano o CNF o tre e metà.

343
00:24:34,580 --> 00:24:36,760
Quindi è quello che stavi cercando di fare.

344
00:24:36,790 --> 00:24:38,050
Ti sei rivolto a te.

345
00:24:38,170 --> 00:24:38,620
OK.

346
00:24:38,780 --> 00:24:39,890
Quindi questo è tutto.

347
00:24:39,890 --> 00:24:44,690
Quindi penso che sia una buona introduzione alla progettazione di database.

348
00:24:44,690 --> 00:24:48,770
Successivamente vedremo un design del database per il nostro progetto stesso.

349
00:24:48,980 --> 00:24:54,230
E se sei interessato puoi leggere di più su Googling o per lo più puoi acquistare

350
00:24:54,230 --> 00:25:01,130
il libro che sono specificati nella loro lezione introduttiva su come più approfonditamente la nostra descrizione di tutte queste forme sono normalmente

351
00:25:01,430 --> 00:25:06,540
molti di noi sono anche una specie di confuso tra BCA abbastanza e abbastanza libero.

352
00:25:06,720 --> 00:25:10,280
Ma spero che tu abbia una grande idea su di loro.

353
00:25:10,510 --> 00:25:10,960
OK.

354
00:25:10,970 --> 00:25:12,080
Grazie.

355
00:25:12,080 --> 00:25:14,850
E felice codifica e ci vediamo nel prossimo.
