1
00:00:00,290 --> 00:00:01,480
D'accord, nous reviendrons.

2
00:00:01,530 --> 00:00:04,630
Il est temps pour nous de commencer à travailler avec des bases de données interagir endroits.

3
00:00:04,770 --> 00:00:18,690
Et avant que nous écrivons le code, je veux juste prendre quelques minutes ici, donc nous serons assez vite pour parler de ce que les bases de données sont réellement, puis d'introduire deux grandes catégories de bases de données qui sont des séquelles ou Escudo contre aucune suite ou non.

4
00:00:18,690 --> 00:00:20,120
Q Toutes les bases de données.

5
00:00:20,720 --> 00:00:21,060
D'ACCORD.

6
00:00:21,060 --> 00:00:26,160
Alors commençons ici et pour commencer je veux illustrer le problème que nous avons en ce moment.

7
00:00:26,250 --> 00:00:33,410
J'ai la démo de demande POST qui exécute ces amis là où je peux énumérer tous mes amis et nous pouvons ajouter quelques nouveaux amis.

8
00:00:33,600 --> 00:00:39,450
Je viens de faire un nouveau nommé aujourd'hui Garfield et un autre ami nommé sa mine.

9
00:00:40,550 --> 00:00:41,120
D'ACCORD.

10
00:00:41,310 --> 00:00:48,780
Et puis je peux revenir ici et si je coupe le serveur et recommence et je rafraîchis ma page.

11
00:00:49,340 --> 00:00:51,520
Vous venez de perdre deux amis.

12
00:00:51,570 --> 00:00:59,430
Donc, le problème auquel nous sommes confrontés est que nos données ne persiste pas si notre serveur s'arrête pour quelque raison que ce soit parce que nous l'avons désactivé.

13
00:00:59,430 --> 00:01:00,390
Nous voulions le redémarrer.

14
00:01:00,390 --> 00:01:13,320
Nous avons apporté quelques modifications au code ou si c'est parce que le pouvoir s'éteint ou un événement freak arrive si le serveur s'arrête, nous perdrions toutes les données qui est évidemment vraiment une chose vraiment mauvaise pour une application web.

15
00:01:13,600 --> 00:01:21,700
Si Facebook a perdu vos données chaque fois que vous avez déconnecté ou chaque fois que le serveur a arrêté ce serait vraiment vraiment mauvais pour Facebook, même si cela pourrait être assez bon pour moi.

16
00:01:21,840 --> 00:01:22,980
Je serais productif.

17
00:01:23,040 --> 00:01:29,530
J'ai arrêté de me comparer à mes amis à Stop essayer de prouver à tout le monde que je vis une vie amusante et je viens de faire des trucs.

18
00:01:29,940 --> 00:01:33,940
Donc, tout cela signifie que les bases de données nous aideront à résoudre ce problème.

19
00:01:34,230 --> 00:01:38,950
Alors parlons de ce que les bases de données sont dans la définition la plus simple possible.

20
00:01:38,950 --> 00:01:47,480
La base de données est une collection de données d'information, mais une base de données n'est pas seulement une collection d'informations.

21
00:01:47,490 --> 00:01:55,100
Donc, si nous avions un fichier juste un fichier texte et sublime qui avait un tas d'informations et l'a sauvé qui ne serait pas une base de données.

22
00:01:55,380 --> 00:01:57,100
Oui, il pourrait stocker des données pour nous.

23
00:01:57,120 --> 00:02:16,830
Il peut s'agir d'une collection d'informations, mais l'autre aspect important des bases de données est qu'ils ont une interface pour interagir avec ces données, qu'il s'agisse d'ajouter de nouvelles informations comme l'ajout d'un nouvel utilisateur à la base de données ou de supprimer tous les utilisateurs ou de modifier un utilisateur existant ou Quoi qu'il en soit il doit y avoir un moyen pour nous d'interagir avec les données.

24
00:02:16,890 --> 00:02:22,740
Donc, une base de données est une collection d'informations slushed données et il a une interface.

25
00:02:23,160 --> 00:02:27,350
Quand je dis interface, je veux dire que nous pouvons écrire du code pour interagir avec elle.

26
00:02:27,360 --> 00:02:36,340
Donc, si vous avez déjà travaillé avec une base de données séquelle avant que vous pourriez avoir vu des choses comme cette étoile de sélectionner, je devrais capitaliser cela.

27
00:02:37,820 --> 00:02:41,270
C'est comme l'étoile des utilisateurs.

28
00:02:41,280 --> 00:02:44,630
Ou vous pouvez voir quelque chose comme insert bla bla bla dans.

29
00:02:44,730 --> 00:02:53,730
Et c'est une langue appelée suite et c'est l'interface avec certaines bases de données que la langue que nous allons utiliser ressemble à ceci.

30
00:02:53,910 --> 00:03:08,950
D-B point chiens dot ou D-B points dot effacer et supprimera les chiens où nous avons l'âge juste 14.

31
00:03:09,060 --> 00:03:14,790
Malheureusement tous mes chiens sont morts à cet âge et je veux en parler et je vais supprimer tous les chiens où l'âge est de 14 ans.

32
00:03:15,210 --> 00:03:20,070
Nous allons entrer dans les détails de la langue dans la prochaine vidéo, mais je veux juste que vous soyez au courant.

33
00:03:20,160 --> 00:03:25,270
C'est ce que je veux dire quand je dis qu'il ya une interface pour la collecte des données d'information slash.

34
00:03:25,830 --> 00:03:26,400
D'ACCORD.

35
00:03:26,400 --> 00:03:38,240
Donc, la dernière chose que je veux faire est de parler des deux grandes catégories ou deux des grandes catégories de bases de données et ceux qui sont suite qui est également appelée bases de données relationnelles contre non.

36
00:03:38,250 --> 00:03:52,130
Comme vous le savez bien suite qui sont appelées bases de données non relationnelles lorsque je parle à mes étudiants sur les bases de données beaucoup d'entre eux ont eu une certaine expérience avec une sorte de base de données qu'ils soient dans le marketing ou de détail ou quelque chose en ligne.

37
00:03:52,200 --> 00:04:17,420
Presque toutes les entreprises ont une base de données, généralement beaucoup de bases de données avec beaucoup d'informations en elle si c'est une base de données pour tous les Skewes dans l'écart ou une base de données pour la paie de tous les employés et ce qu'ils ont été payés et quand ou Si c'est un tas de données sur des utilisateurs comme Facebook a où il stocke toutes vos informations d'utilisateur sur vos photos vos commentaires vos messages vos goûts vos tags tout ce truc est stocké dans des bases de données.

38
00:04:17,430 --> 00:04:34,950
Quand je parle aux étudiants sur les bases de données, les étudiants qui sont familiers et ont l'expérience avec des bases de données ont presque toujours seulement l'expérience avec la suite ou les bases de données relationnelles et c'est parce que les bases de données de suite ont été autour de la plus longue et ils sont ce que la plupart des gens pensent quand ils pensent Une base de données.

39
00:04:35,280 --> 00:04:38,970
Donc, maintenant parlons de ce que les bases de données séquelle ce que les moyens relationnels.

40
00:04:39,270 --> 00:04:43,740
Les bases de données séquentielles sont donc des bases de données tabulaires et elles sont plates.

41
00:04:43,830 --> 00:04:45,120
Laissez-moi vous montrer ce que je veux dire.

42
00:04:45,120 --> 00:04:54,530
Donc, j'ai quelques diagrammes bruts que j'ai tapé et ce qui montre ce que les tables pour une base de données impliquant des utilisateurs et des commentaires pourrait ressembler.

43
00:04:54,540 --> 00:04:57,760
Commençons par nous concentrer sur les utilisateurs.

44
00:04:57,840 --> 00:05:04,320
Donc ce que nous devons faire dans une base de données relationnelle ou une base de données Seacole est de définir ce qu'est un utilisateur ressemble.

45
00:05:04,500 --> 00:05:13,520
Ainsi, un utilisateur a un ID comme nom et âge et une ville et chaque utilisateur que nous ajoutons doit suivre ce modèle.

46
00:05:14,420 --> 00:05:23,780
Nous définissons donc ces tables et ensuite nous ajoutons des instances de l'utilisateur ou des utilisateurs à cette table et puis supposons que j'ai aussi des commentaires.

47
00:05:23,840 --> 00:05:26,220
Donc, je veux qu'un utilisateur puisse commenter.

48
00:05:26,330 --> 00:05:45,130
J'ai donc une table de commentaires et tout ce qu'un commentaire a est un ID et un texte du commentaire comme EHLO ou venez visiter le Montana ou j'aime des chiots si je veux qu'il y ait une relation entre les utilisateurs et les commentaires où un utilisateur peut avoir un commentaire Ceux qui lui sont associés.

49
00:05:45,320 --> 00:05:51,370
Donc, Ira, j'entends qui est de 24 Missoula peut être associé à certains de ces commentaires ici.

50
00:05:51,410 --> 00:05:55,160
Comme venez visiter Montana et sérieusement Montana est grand.

51
00:05:55,160 --> 00:06:01,120
La seule façon de faire cela pour exprimer cette relation est à travers une autre table qui est ce que nous avons ici.

52
00:06:01,330 --> 00:06:03,020
Et ce sont des tables de jointure.

53
00:06:03,170 --> 00:06:08,450
Et ce que fait ce tableau, c'est qu'il rejoint l'ID d'un utilisateur avec un ID de commentaire.

54
00:06:08,450 --> 00:06:14,700
Donc, dans ce cas, nous voyons que l'utilisateur avec ID un possède le commentaire avec ID 3.

55
00:06:14,930 --> 00:06:27,270
Donc, cela signifie que Tim a dit que j'aime les chiots et l'utilisateur avec l'idée de deux commentés deux fois et ces commentaires ou idée d'une idée pour.

56
00:06:27,560 --> 00:06:33,080
Ainsi, nous pouvons voir que IRA a commenté venir visiter le Montana et aussi sérieusement.

57
00:06:33,080 --> 00:06:34,360
Montana est super.

58
00:06:34,370 --> 00:06:36,470
Et oui 110 est grand.

59
00:06:36,500 --> 00:06:39,740
Ce que je veux vraiment montrer avec tout cela, c'est que tout est tabulaire.

60
00:06:39,800 --> 00:06:44,020
Nous devons donc définir une table à l'avance et ce n'est pas très flexible du tout.

61
00:06:44,120 --> 00:06:50,590
Supposons que je voulais ajouter un autre attribut à l'IRA qui était la couleur préférée et je voulais le mettre en pourpre.

62
00:06:50,690 --> 00:06:54,240
Je devrais alors aller ajouter une couleur préférée pour tout le monde.

63
00:06:54,240 --> 00:07:05,900
Appelons juste une couleur de fav et il devrait être vide ainsi je devrais avoir Noel ou indéfini ou nyl ou juste faux ou quelque chose ici pour chaque personne seule.

64
00:07:06,020 --> 00:07:07,450
Ce n'est donc pas flexible.

65
00:07:07,530 --> 00:07:15,300
Ce que je dois faire est de définir les modèles exacts de ce qu'est un utilisateur ressemble et puis je dois suivre ce modèle très étroitement.

66
00:07:15,410 --> 00:07:23,900
Donc, l'autre type de bases de données non relationnelles ou pas de base de données et vous les attrapez probablement ici.

67
00:07:23,900 --> 00:07:26,240
Nous n'avons pas à définir les modèles à l'avance.

68
00:07:26,240 --> 00:07:27,660
Ils sont beaucoup plus flexibles.

69
00:07:27,890 --> 00:07:32,400
Voici donc un exemple de représentation d'une base de données non relationnelle.

70
00:07:32,480 --> 00:07:33,670
Il n'y a pas de tables.

71
00:07:33,710 --> 00:07:37,880
Nous n'avons donc pas à définir cette structure tabulaire et les choses peuvent être imbriquées.

72
00:07:37,880 --> 00:07:40,380
Ce n'est donc pas une base de données plate.

73
00:07:40,670 --> 00:07:43,780
Donc vous pouvez voir ici, il ressemble à javascript.

74
00:07:43,790 --> 00:07:45,360
En fait, c'est vraiment très similaire.

75
00:07:45,530 --> 00:07:57,450
C'est quelque chose appelé battement sur lequel se tient pour la notation d'objet javascript binaire, mais c'est essentiellement des objets javascript que nous sommes familiers avec et ils ont un tas de paires valeur clé donc nom est Ira.

76
00:07:57,490 --> 00:08:00,530
L'âge est 24 ville est Missoula.

77
00:08:00,530 --> 00:08:02,510
Et puis c'est la partie vraiment importante.

78
00:08:02,510 --> 00:08:06,040
Les commentaires peuvent simplement être imbriqués à l'intérieur des données.

79
00:08:06,110 --> 00:08:07,760
Je n'ai pas à traiter avec IDS.

80
00:08:07,850 --> 00:08:10,390
Je n'ai pas à définir ce tableau à l'avance.

81
00:08:10,490 --> 00:08:19,910
Je peux juste jeter des commentaires ici et commencer juste à ajouter des objets et si je recommit quelque chose d'autre je peux juste ajouter dans un autre commentaire pousser dans ce tableau.

82
00:08:19,910 --> 00:08:27,360
Et donc ce commentaire pourrait dire pourquoi personne ne se soucie de Tanno.

83
00:08:27,790 --> 00:08:29,120
Et c'est une très bonne question.

84
00:08:29,150 --> 00:08:30,470
Je ne sais pas non plus.

85
00:08:30,590 --> 00:08:37,270
Donc, nous finissons maintenant avec cette structure très très flexible où si nous voulions, je pourrais simplement définir la couleur préférée ici.

86
00:08:37,400 --> 00:08:47,870
Fav couleur est violet et puis je pourrais avoir un autre utilisateur qui est appelé Tammy.

87
00:08:47,870 --> 00:08:52,900
Et Tammy peut être 24 d'un zoo aussi et elle n'aura pas une couleur fave du tout.

88
00:08:52,910 --> 00:08:57,290
Et au lieu de cela elle a préféré la nourriture qui est revi.

89
00:08:57,320 --> 00:08:57,550
D'accord.

90
00:08:57,560 --> 00:08:58,740
Donc c'est assez de cela.

91
00:08:58,850 --> 00:09:14,920
Mais je voulais vraiment me concentrer sur tout cela, c'est la différence entre relationnel et non relationnel donc pas les détails nuisibles de la syntaxe ou comment il fonctionne réellement juste la grande différence que les bases de données suite ou bases de données relationnelles ont été autour de la plus longue.

92
00:09:15,010 --> 00:09:19,580
Sont ce que la plupart des gens pensent de quand ils pensent des bases de données où nous devons définir une table.

93
00:09:19,640 --> 00:09:34,040
Tout est tabulaire et si nous voulons relier des données, nous devons avoir plusieurs tables pour relier ces données et nous, nous utilisons souvent des identifiants pour le faire avec une base de données non relationnelle qui est ce sur quoi nous allons nous concentrer pour la plupart de cette cours.

94
00:09:34,130 --> 00:09:36,660
Nous n'avons pas à définir de tableaux quelconques.

95
00:09:36,680 --> 00:09:41,930
Nous n'avons pas de tables du tout et nous avons plutôt une structure beaucoup plus flexible.

96
00:09:41,930 --> 00:09:45,390
Maintenant, cela ne veut pas dire que les bases de données non relationnelles sont meilleures.

97
00:09:45,440 --> 00:09:55,490
En fait dans beaucoup de cas ils ne sont pas presque dans tous les cas mais il ya des situations spécifiques où ils font sens et je vais parler de pourquoi nous utilisons une base de données non relationnelle dans la prochaine vidéo.

98
00:09:55,490 --> 00:10:00,610
Mais je n'ai pas besoin d'avoir l'impression que parce que c'est plus souple, il est en soi mieux.

99
00:10:00,620 --> 00:10:07,590
Ce n'est pas le cas, mais il est plus flexible que si c'est ce que vous cherchez, alors vous voulez utiliser une base de données non relationnelle.

100
00:10:07,670 --> 00:10:09,580
Très bien, allons-y.

101
00:10:09,650 --> 00:10:11,980
Une base de données est une collection d'informations.

102
00:10:12,020 --> 00:10:26,460
Il a une interface une sorte de langue une sorte de technologie ou des outils pour interagir avec les données ajouter de nouvelles choses lire les choses de la base de données supprimer des choses modifier des choses et puis il ya deux grandes catégories de séquelles de bases de données et aucune suite.

103
00:10:26,840 --> 00:10:27,460
D'ACCORD.
